Update of "DevTools/testrunner.js" Вы: nobody
Вход

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview

Artifact ID: 6d595652a0c2eb5ec23a7d92757fed766826ddb3
Page Name:DevTools/testrunner.js
Date: 2011-11-17 18:44:19
Original User: kuntashov
Next fc14d28031bf15ee1a4568f357c3278e0c660c2a
Content

Скрипт TestRunner (testrunner.js)

Скрипт для автоматического выполнения юнит-тестов других скриптов-аддинов разработчиками.

В настоящий момент скрипт умеет следующее:

Зависимости

Скрипт основан на пулярной библиотеке юнит-тестирования для JavaScript http://jsunit.net и использует для своей работы ее порт для Снегопата, который также находится в репозитории: 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); }

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