Перейти к основному содержимому

Организация тестов

Расширение с тестами

Тесты размещаются в расширениях конфигурации, вы можете их совместить с движком, либо создать отдельное расширение.

  • Вместе с движком.
    • Доступна контекстная подсказка.
    • Сложнее обновлять движок, необходимо воспользоваться сравнением-объединением.
  • В отдельном расширении.
    • Нет подсказки по методам движка.
    • Движок обновляется загрузкой/заменой.
    • Проще переключаться между версиями.
    • Движок можно не хранить в репозитории проекта.

Мы в своих проектах используем первый вариант, так как удобство и экономия времени каждым разработчиком от контекстной подсказки перевешивает минус ручного обновления.

Тесты движка

Тестовые модули

Тесты располагаются в общих модулях (не заимствованных). Тестовые модули (наборы тестов объекта) состоят из следующих блоков:

  • Метод регистрации тестов ИсполняемыеСценарии. В методе регистрации необходимо перечислить все тесты и, при необходимости, выполнить настройку.
  • Реализация тестов, тестовые методы, собственно сами тесты.
  • Обработчики событий, при необходимости.

Принято на один тестируемый модуль объекта создавать один общий модуль с тестами, например, тесты на модуль объекта и отдельно тесты на модуль менеджера.

Также полезно использовать регламент наименования тестовых модулей, так чтобы вам проще было с ними работать в будущем, облегчить навигацию.

Рекомендуем рассмотреть схему именования для EDT и если ее соблюдать, вы сможете с легкостью переключатся между тестом и тестируемым методом.

Схема наименования модулей

Все тесты должны располагаться в общих модулях.

Имя тестового модуля должно соответствовать шаблону [Префикс типа объекта_][Имя проверяемого объект]{_Суффикс типа модуля}, где суффикс не обязателен, но крайне желателен.

По правильно названному модулю мы можем с легкостью получить информацию о типе тестируемого объекта и его имени, а также тип его модуля, методы которого проверяем. Список поддерживаемых суффиксов и префиксов приведен в таблицах ниже.

Префиксы типов объекта

Тип тестируемого объектаПрефиксПример
Общий модульОМ_ОМ_ОбщегоНазначения
Регистр бухгалтерииРБ_РБ_Хозрасчетный, РБ_Хозрасчетный_НЗ
Регистр накопленияРН_РН_ОстаткиНаСкладах, РН_ОстаткиНаСкладах_ММ
Регистр расчетаРР_РР_Зарплата, РР_Зарплата_НЗ
Регистр сведенийРС_РС_АдресныйКлассификатор
Бизнес процессБП_БП_Согласование
СправочникСпр_Спр_Пользователи, Спр_Пользователи_МО
План счетовПС_ПС_Хозрасчетный
План видов расчетаПВР_ПВР_Зарплатный
План видов характеристикПВХ_ПВХ_Субконто, ПВХ_Субконто_ММ
ДокументДок_Док_ПКО
ПеречислениеПер_Пер_СтатусСогласования
План обменаПО_ПО_РИБ, ПО_РИБ_ММ
ЗадачаЗад_Зад_Задача
ОбработкаОбр_Обр_ЗакрытиеМесяца, Обр_ЗакрытиеМесяца_МО
ОтчетОтч_Отч_УниверсальныйОтчет

Суффиксы типов модулей

Тип тестируемого модуляСуффиксПример
Общий модуль<Без суффикса>ОМ_ОбщегоНазначения
Модуль объекта_МОСпр_Пользователи_МО, Обр_ЗакрытиеМесяца_МО
Модуль менеджера_ММПВХ_Субконто_ММ, ПО_РИБ_ММ
Модуль набора записей_НЗРБ_Хозрасчетный_НЗ, РР_Зарплата_НЗ

Тестовые методы

Тест состоит из двух обязательных частей:

  • Регистрация в методе ИсполняемыеСценарии
  • Реализация теста.