D 2011-11-17T18:44:19.793 L DevTools/testrunner.js U kuntashov W 3347 Скрипт TestRunner (testrunner.js) Скрипт для автоматического выполнения юнит-тестов других скриптов-аддинов разработчиками. В настоящий момент скрипт умеет следующее:

Зависимости

Скрипт основан на пулярной библиотеке юнит-тестирования для JavaScript [http://jsunit.net] и использует для своей работы ее порт для Снегопата, который также находится в репозитории: [/finfo?name=Libs/jsUnitCore.js|Libs/jsUnitCore.js]. Эта же библиотека рекомендуется авторам скриптов как библиотека для написания тестов.

Требования к скриптам-тестам

Тестовый скрипт должен в имени файла иметь префикс "test". Это необходимо, чтобы TestRunner мог различать, какие скрипты в каталоге являются тестовыми, а какие - вспомогательными, которые загружать не надо. Тест-кейсы - это макросы, т.е. функции с префиксом macros, но дополненным словом "Test". Другие макросы и функции из скрипта считаются служебными и не загружаются в дерево тестов. Никаких других специальных требований к тестовым скриптам и их содержимому не предъявляются.

Примеры тестовых скриптов

Полноценные реальные тестовые скрипты, предназначенные для выполнения при помощи TestRunner'а, находятся в подкаталоге Tests\Automated каталога scripts. Ниже приводится в качестве примера простейший тестовый скрипт. Имя файла: textExampleTest.js
$engine JScript
$uname ExampleTest
$dname Пример тестового скрипта
$addin stdlib

// Подключаем библиотеку jsUnitCore.js
stdlib.require('jsUnitCore.js', SelfScript);

function macrosTest2plus2()
{
    assertEquals("Операция сложения не работает!", 4, 2 + 2);
}

Полезные ссылки

Z bda023d290c6531fd553cce2cb54df7f