Скрипт "Добавить описание тестовых случаев текущего модуля в метод ПолучитьСписокТестов - фреймворк xUnitFor1C" (xUnitAddTestsDesc.js)
- Автор : Артур Аюханов aka artbear
- Дата создания: 15.04.2014
Описание :
Скрипт позволяет дополнить модуль внешней обработки с набором тестов для тестового фреймворка xUnitFor1C
Скрипт выполняет свою работу перед сохранением файла внешней обработки (т.е. полностью автоматизировано! )
Cейчас не нужно после написания определения метода/тестового случая (ТестДолжен_ПроверитьПроведениеДокументаПКОпоРегиструБухгалтерии) не нужно вставлять описание этого метода в спец.функцию.
Если в модуле с набором тестов есть тестовые случаи (экспортные процедуры без параметров, имя которых начинается на Тест, например, ТестДолжен_ПроверитьПроведениеДокументаПКОпоРегиструБухгалтерии), то в специальную функцию "ПолучитьСписокТестов" выполняется автовставка описания этих тестовых случаев.
Тесты становится писать еще проще и быстрее.
Также возможна работа по макросу - "Вставить определения тестовых случаев xUnitFor1C"
Например, есть следующий модуль:
Процедура ТестДолжен_ПроверитьПроведениеДокументаПКОпоРегиструБухгалтерии() Экспорт ВызватьИсключение "Тест не реализован"; КонецПроцедуры
После сохранения модуля (или вызова макроса) скрипта модуль примет следующий вид
Перем юТест; Функция ПолучитьСписокТестов(ЮнитТестирование) Экспорт юТест = ЮнитТестирование; ВсеТесты = Новый Массив; ВсеТесты.Добавить("ТестДолжен_ПроверитьПроведениеДокументаПКОпоРегиструБухгалтерии"); Возврат ВсеТесты; КонецФункции Процедура ТестДолжен_ПроверитьПроведениеДокументаПКОпоРегиструБухгалтерии() Экспорт ВызватьИсключение "Тест не реализован"; КонецПроцедуры
-
Если функции "ПолучитьСписокТестов" в модуле внешней обработки не существует, то выполняется вставка кода этой функции с готовыми описаниями тестовых случаев.
-
Если функции "ПолучитьСписокТестов" уже существует, то выполняется дополнительная вставка кода в эту функцию с готовыми описаниями тестовых случаев.
-
Описания тестов всегда пересоздаются в порядке описания тестов в модуле
Ссылки: