Создаем новую базу данных 1С без метаданных с установленным свойством "Основной режим запуска" = "Обычное приложение"
Создаем документ "Заказ" с реквизитами
- Сумма типа Число
- СуммаЗаполнена типа Булево
В модуль объекта документа помещаем:
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
СуммаЗаполнена = Сумма <> 0
КонецПроцедуры
Создаем роль со всеми правами
Создаем пользователя с установленной ролью, со сброшенным флагом "Защита от опасных действий"
Создаем текстовый файл "Фича1.feature" содержащий:
Функционал: Проверка корректности установки флага "Сумма заполнена" в документе "Заказ"
Контекст:
Дано Создан документ ЗаказСценарий: Установка флага при записи
Когда Документ записан с НЕнулевой суммой
Тогда В документе устанавлен флаг "Сумма заполнена"Сценарий: Сброс флага при записи
Когда Документ записан с нулевой суммой
Тогда В документе сброшен флаг "Сумма заполнена"
Скачиваем файл add*.zip со страницы https://github.com/vanessa-opensource/add/releases/
Разархивируем.
В режиме предприятия конфигурации открываем файл bddRunner.epf
На закладке "Запуск сценариев" по кнопке "Загрузить фичи" выбираем каталог с файлом фичи.
На закладке "Генератор EPF" указываем путь к каталогу где находится файл 1cv8.exe
Нажимаем кнопку "Создать шаблоны обработок". В каталоге с фичей появится каталог с обработкой
Открываем обработку в конфигураторе
В следующих процедурах замещаем существующий код:
Процедура СозданДокументЗаказ() Экспорт
Заказ = Документы.Заказ.СоздатьДокумент();
Заказ.Дата = ТекущаяДата();
Контекст.Вставить("Заказ", Заказ)
КонецПроцедуры
Процедура ДокументЗаписанСНЕнулевойСуммой() Экспорт
Контекст.Заказ.Сумма = 1;
Контекст.Заказ.Записать();
КонецПроцедуры
Процедура ДокументЗаписанСНулевойСуммой() Экспорт
Контекст.Заказ.Сумма = 0;
Контекст.Заказ.Записать();
КонецПроцедуры
Процедура ВДокументеУстанавленФлаг(Парам01) Экспорт
Если НЕ Контекст.Заказ.СуммаЗаполнена Тогда
ВызватьИсключение "Неуспех";
КонецЕсли;
КонецПроцедуры
Процедура ВДокументеСброшенФлаг(Парам01) Экспорт
Если Контекст.Заказ.СуммаЗаполнена Тогда
ВызватьИсключение "Неуспех";
КонецЕсли;
КонецПроцедуры
Записываем обработку
В режиме предприятия в обработке bddRunner нажимаем кнопку "Выполнить сценарии"
Получаем успешно пройденный тест с сообщением "Все сценарии обработаны!" и зелеными значками у сценариев