|
Тестовый скрипт представляет собой последовательность примитивных действий (команд), каждая из которых может быть источником результатов теста .
Используется как низкоуровневое средство в различных нестандартных ситуациях. Позволяет в процессе тестирования проводить операции с файлами (копирование, переименовывание, удаление), с переменными окружения, запускать внешние программы из командной строки, проверять на совпадение с эталоном произвольное количество файлов и т.п.
Тестовый скрипт выполняется как единое целое, при этом все результаты тестирования (файлы для сравнения с эталонами) отдельных команд вместе считаются результатами всего скрипта. Соответственно элементы скрипта не имеют спецификаторов (имён). Только весь скрипт, как единое целое, имеет спецификатор.
В частности стандартный простейший тест exec_check может быть реализован как тестовый скрипт с двумя командами exec и check . При желании, между exec и check можно выполнять ещё какие-нибудь действия, например нормализацию результирующего файла.
Есть и команда с названием exec_check (полный аналог соответствующего теста, за исключением спецификатора теста). Её можно использовать, например, в комбинации с ещё одним check , который проверит измененные файлы, являющееся для программы побочным эффектом.
Сам по себе exec можно использовать для подготовки каких-нибудь предварительных данных, или наоборот отката после теста к исходному состоянию.
Кроме того, есть специальный тип тестовой команды, запускающей любой тест (естественно при этом не используется за ненадобностью его спецификатор). Например, таким образом удобно использовать тест exec_check_directory .
Полное описание теста выглядит как:<test_script> <spec> <sname>short_name_of_test</sname> <fname>full name of test</fname> <descr>description of test</descr> </spec> <params> .. named params .. </params> <safe_params> .. named params if undefined .. </safe_params> <items> .. items of script .. </items> </test_script> |
params, safe_params | Перечисление определений переменных подстановок для составляющих тестов. |
items | Перечисление описателей элементов скрипта. |
spec | Идентификационная информация о тесте (имена, описание) |
sname | Короткое название теста. Используется для вывода в ГУИ-среде и для указания пути к тесту в консольном варианте . Без перевода строк. Желательно покороче, и без пробелов. |
fname | Полное название теста. Используется для вывода в консольном варианте системы . Без перевода строк. Предполагается, что должно поместиться в одну строку/экран. То есть желательно уложиться до 60 символов. |
descr | Полное описание текста. Вот здесь можно писать что угодно, любой длинны и с любыми переводами каретки. В консольном и ГУИ варианте это описание можно посмотреть только специальной командой. |
|