Модуль: | SystemTests |
Имя: | Тесты системы OpenSCADA. |
Тип: | Специальные |
Источник: | spec_SystemTests.so |
Версия: | 1.5.2 |
Автор: | Роман Савоченко |
Описание: | Предоставляет группу тестов системы OpenSCADA. |
Лицензия: | GPL |
Специальный модуль 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>
Описание: Тест DAQ параметров. Вычитывает атрибуты и конфигурационные поля параметра.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
name | Адрес DAQ параметра | Строка | Вход | System.AutoDA.CPULoad |
Описание: Тест разбора файла XML. Парсит и отображает структуру указанного файла.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
file | XML файл | Строка | Вход |
Описание: Тест архива сообщения. Периодически вычитывает новые сообщения из архива, для указанного архиватора.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
arhtor | Архиватор | Строка | Вход | FSArch.StatErrors |
categ | Шаблон категории сообщения | Строка | Вход | |
depth | Глубина сообщения (с) | Целый | Вход | 10 |
Описание: Тест подключения/отключения модулей.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
name | Путь к модулю | Строка | Вход | |
mode | Режим (1-подключ.;-1-отключ.;0-изменение) | Целый | Вход | 0 |
full | Полное подключение(при старте) | Bool | Вход | 1 |
Описание: Тест значений атрибута параметра. Выполняет периодический опрос последнего значения указанного атрибута, а также опрос архива на указанную глубину.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
name | Путь к атрибуту параметра | Строка | Вход | System.AutoDA.CPULoad.load |
arch_len | Глубина запроса к архиву значений (с) | Целый | Вход | 10 |
arch_per | Период запроса к архиву значений (мкс) | Целый | Вход | 1000000 |
Описание: Полный тест БД. Выполняет:
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
type | Тип БД | Строка | Вход | SQLite |
addr | Адрес БД | Строка | Вход | ./DATA/test.db |
table | Таблица БД | Строка | Вход | test |
size | Количество записей | Целый | Вход | 1000 |
Описание: Тест выходных и/или входных транспортов. Выполняет тестирование исходящего транспорта путём отправления запроса к указанному входящему транспорту.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
addr | Адрес | Строка | Вход | TCP:127.0.0.1:10001 |
type | Модуль транспорта | Строка | Вход | Sockets |
req | Текст запроса | Строка | Вход |
Описание: Тест языка управления системой. Производит запрос элементов языка посредством полного пути. Полный путь к элементу языка имеет вид </Archive/%2fbd%2fm_per>. Полный путь состоит из двух вложенных путей. Первый </d_Archive/> это путь к узлу дерева контроля. Второй </bd/m_per> это путь к конкретному элементу узла.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
path | Путь к элементу языка | Строка | Вход | /Archive/BaseArh/mess_StatErrors/%2fprm%2fst |
Описание: Тесты буфера значений. Содержит 13 тестов всех аспектов буфера значений (подсистема "Архивы").
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат |
Описание: Тесты размещения в архиве значений. Содержит 7(8) тестов архиватора значений на проверку корректности функционирования последовательного механизма упаковки.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат | |
arch | Архив значений | Строка | Вход | |
period | Период значений (мкс) | Целый | Вход | 1000000 |
archtor | Архиватор | Строка | Вход |
Описание: Тесты кодирования Mime Base64 алгоритмом.
Параметры:
ID | Имя | Тип | Режим | По умолчанию |
rez | Результат | Строка | Возврат |