1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-04-23 11:48:39 +02:00
2024-03-28 21:18:51 +03:00

6.8 KiB

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

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

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

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

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

Тесты движка

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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