OpenSCADAWiki: Doc/ System Tests
 
English (1 Kb) English
Ukrainian (1 Kb) Українська

 (2 Kb) Страница заморожена, актуальная тут.


Модуль подсистемы “Специальные” <SystemTests>


Модуль:SystemTests
Имя:Тесты системы OpenSCADA.
Тип:Специальные
Источник:spec_SystemTests.so
Версия:1.5.2
Автор:Роман Савоченко
Описание:Предоставляет группу тестов системы OpenSCADA.
Лицензия:GPL

Contents

Введение

Специальный модуль SystemTests содержит набор тестов, предназначенных для тестирования различных подсистем и узлов системы OpenSCADA. Тесты выполнены в виде функций пользовательского API. Следовательно тесты можно запускать как единоразово, во вкладке "Исполнить" страницы объекта функции, так и из пользовательских процедур, передавая в них нужные аргументы.

Для адресации к тестам можно использовать статический адрес вызова "Special.SystemTests.{Test}()" или динамический "SYS.Special.SystemTests["{Test}"].call()", "SYS.Special.SystemTests.{Test}()". Где {Test} — идентификатор функции в библиотеке.

Кроме механизмов обычного исполнения функций пользовательского API предусмотрен автономный механизм. Этот механизм представлен отдельной задачей, исполняющейся с периодом в одну секунду, в которой осуществляется вызов функций тестов в соответствии с настройками в конфигурационном файле.

Конфигурационные поля тестов помещаются в секцию модуля SystemTests подсистемы «Специальные». Формат конфигурационных полей: <prm id="Test Id" on="1" per="10" />
Где:

Кроме основных атрибутов осуществляется отражение входных параметров функций тестов на одноимённые атрибуты тега "prm". Например, атрибут "name" функции "Param" можно указать в теге "prm".

Допускается указание множества тегов "prm" для одного или разных тестов с одинаковыми или различными параметрами, указывая тем самым на отдельный запуск теста с указанными параметрами. Приведём пример описания всех доступных тестов:
<?xml version="1.0" encoding="UTF-8" ?>
<OpenSCADA>
    <station id="DemoStation">
        <node id="sub_Special">
            <node id="mod_SystemTests">
                <prm id="Param" on="0" per="5" name="LogicLev.experiment.F3"/>
                <prm id="XML" on="0" per="10" file="/etc/oscada.xml"/>
                <prm id="Mess" on="0" per="10" categ="" arhtor="DBArch.test3" depth="10"/>
                <prm id="SOAttach" on="0" per="20" name="../../lib/openscada/daq_LogicLev.so" mode="0" full="1"/>
                <prm id="Val" on="0" per="1" name="LogicLev.experiment.F3.var" arch_len="5" arch_per="1000000"/>
                <prm id="Val" on="0" per="1" name="System.AutoDA.CPULoad.load" arch_len="10" arch_per="1000000"/>
                <prm id="DB" on="0" per="10" type="MySQL" addr="server.diya.org;roman;123456;oscadaTest" table="test" size="1000"/>
                <prm id="DB" on="0" per="10" type="DBF" addr="./DATA/DBF" table="test.dbf" size="1000"/>
                <prm id="DB" on="0" per="10" type="SQLite" addr="./DATA/test.db" table="test" size="1000"/>
                <prm id="DB" on="0" per="10" type="FireBird" addr="server.diya.org:/var/tmp/test.fdb;roman;123456" table="test" size="1000"/>
                <prm id="TrOut" on="0" per="1" addr="TCP:127.0.0.1:10001" type="Sockets" req="time"/>
                <prm id="TrOut" on="0" per="1" addr="UDP:127.0.0.1:10001" type="Sockets" req="time"/>
                <prm id="TrOut" on="0" per="1" addr="UNIX:./oscada" type="Sockets" req="time"/>
                <prm id="TrOut" on="0" per="1" addr="UDP:127.0.0.1:daytime" type="Sockets" req="time"/>
                <prm id="SysContrLang" on="0" per="10" path="/Archive/FSArch/mess_StatErrors/%2fprm%2fst"/>
                <prm id="ValBuf" on="0" per="5"/>
                <prm id="Archive" on="0" per="30" arch="test1" period="1000000"/>
                <prm id="Base64Code" on="0" per="10"/>
            </node>
        </node>
  </station>
</OpenSCADA>

1. Параметр (Param)

Описание: Тест DAQ параметров. Вычитывает атрибуты и конфигурационные поля параметра.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
name Адрес DAQ параметра Строка Вход System.AutoDA.CPULoad

2. Разбор XML (XML)

Описание: Тест разбора файла XML. Парсит и отображает структуру указанного файла.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
file XML файл Строка Вход

3. Сообщения (Mess)

Описание: Тест архива сообщения. Периодически вычитывает новые сообщения из архива, для указанного архиватора.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
arhtor Архиватор Строка Вход FSArch.StatErrors
categ Шаблон категории сообщения Строка Вход
depth Глубина сообщения (с) Целый Вход 10

4. Подключение SO (SOAttach)

Описание: Тест подключения/отключения модулей.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
name Путь к модулю Строка Вход
mode Режим (1-подключ.;-1-отключ.;0-изменение) Целый Вход 0
full Полное подключение(при старте) Bool Вход 1

5. Атрибут параметра (Val)

Описание: Тест значений атрибута параметра. Выполняет периодический опрос последнего значения указанного атрибута, а также опрос архива на указанную глубину.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
name Путь к атрибуту параметра Строка Вход System.AutoDA.CPULoad.load
arch_len Глубина запроса к архиву значений (с) Целый Вход 10
arch_per Период запроса к архиву значений (мкс) Целый Вход 1000000

6. Тест БД (DB)

Описание: Полный тест БД. Выполняет:
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
type Тип БД Строка Вход SQLite
addr Адрес БД Строка Вход ./DATA/test.db
table Таблица БД Строка Вход test
size Количество записей Целый Вход 1000

7. Транспорт (TrOut)

Описание: Тест выходных и/или входных транспортов. Выполняет тестирование исходящего транспорта путём отправления запроса к указанному входящему транспорту.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
addr Адрес Строка Вход TCP:127.0.0.1:10001
type Модуль транспорта Строка Вход Sockets
req Текст запроса Строка Вход

8. Язык управления системой (SysContrLang)

Описание: Тест языка управления системой. Производит запрос элементов языка посредством полного пути. Полный путь к элементу языка имеет вид </Archive/%2fbd%2fm_per>. Полный путь состоит из двух вложенных путей. Первый </d_Archive/> это путь к узлу дерева контроля. Второй </bd/m_per> это путь к конкретному элементу узла.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
path Путь к элементу языка Строка Вход /Archive/BaseArh/mess_StatErrors/%2fprm%2fst

9. Буфер значений (ValBuf)

Описание: Тесты буфера значений. Содержит 13 тестов всех аспектов буфера значений (подсистема "Архивы").
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат

10. Архив значений (Archive)

Описание: Тесты размещения в архиве значений. Содержит 7(8) тестов архиватора значений на проверку корректности функционирования последовательного механизма упаковки.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат
arch Архив значений Строка Вход
period Период значений (мкс) Целый Вход 1000000
archtor Архиватор Строка Вход

11. Base64 кодирование (Base64Code)

Описание: Тесты кодирования Mime Base64 алгоритмом.
Параметры:
ID Имя Тип Режим По умолчанию
rez Результат Строка Возврат

Ссылки

Referring pages: Doc
Doc/ValArchiving
HomePageEn/Doc/ValArch
HomePageUk/Doc
Works/Tests/DB