Помощник для разработки и управления регрессионными тестами 1C:Drive в VS Code. Ускоряет навигацию между сценариями, создание новых сценариев по шаблонам и управление фазами и сборкой для тестовых запусков.
Возможности
Работа с текстом сценариев:
Автодополнение и Подсказки:
Предлагает варианты шагов Gherkin из Vanessa Automation по мере ввода (используется Fuzzy Match).
Показывает описание шага из библиотеки шагов Vanessa Automation при наведении мыши на строку шага в YAML файле.
Быстрая Навигация:
Открыть сценарий: Находясь на строке вида And ИмяСценария, можно быстро открыть соответствующий .yaml файл, где определено Имя: "ИмяСценария".
Найти вызовы текущего сценария: Из текущего файла сценария (scen.yaml) можно быстро увидеть список всех мест (And Имя...), где используется этот сценарий.
Создание Сценариев по Шаблонам:
Создать вложенный сценарий:
Вызывается из контекстного меню или палитры команд (1C:Drive - Создать вложенный сценарий).
Запрашивает Имя (может предзаполняться, если команда вызвана с заранее написанной строки вызова And ...), Номерной код теста и Родительскую папку.
Создать главный сценарий:
Вызывается из контекстного меню или палитры команд (1C:Drive - Создать главный сценарий).
Запрашивает Имя главного сценария, метаданные для Phase Switcher (Имя фазы/вкладки, Порядок сортировки, Состояние по умолчанию) и Родительскую папку.
Автоматически создает структуру:
<Родительская папка>/<Имя>/scen.yaml
<Родительская папка>/<Имя>/test/<Имя>.yaml
Вставка Кода (Сниппеты):
Вставить ссылку на вложенный сценарий: Быстро вставляет блок в секцию ВложенныеСценарии (вызывается по Ctrl+Alt+N или Command+Option+N или из контекстного меню).
Вставить параметр сценария: Быстро вставляет блок в секцию ПараметрыСценария (вызывается по Ctrl+Alt+M или Command+Option+N или из контекстного меню).
Вставить новый UID: Генерирует и вставляет новый UUID v4 в текущую позицию курсора (вызывается по Ctrl+Alt+U или Command+Option+U или из контекстного меню).
Панель 1C:Drive Test Helper:
Для открытия, нажмите на иконку расширения в боковой панели (Activity Bar).
Phase Switcher:
Развитие приложения Phase Switcher внутри расширения для VS Code.
Главное отличие - больше нет необходимости во внешних файлах конфигурации, все происходит автоматически!
Назначение: Позволяет быстро включать и выключать наборы тестов для разных запусков.
Обнаружение тестов: Расширение сканирует папку tests/RegressionTests/Yaml/Drive/ (поэтому VS Code нужно открывать в корне проекта!).
Метаданные тестов: Для отображения теста в Phase Switcher, файл scen.yaml должен содержать строку Имя: "Имя теста" и специальные комментарии-маркеры:
# PhaseSwitcher_Tab: # Обязательно - Название вкладки в UI/тестовой фазы
# PhaseSwitcher_Default: # Необязательно - Включен ли тест по умолчанию (true/false)
# PhaseSwitcher_OrderOnTab: # Необязательно - Порядок внутри фазы
Интерфейс:
Тесты сгруппированы по фазам (вкладкам) в выпадающем списке.
Чекбоксы показывают текущее состояние теста (включен/выключен/не найден).
Жирный шрифт у названия теста указывает на то, что его состояние было изменено, но еще не применено.
Кнопки управления:
Обновить: Пересканировать файлы и проверить состояние на диске.
Настройки: Открыть настройки расширения.
Переключить все: Переключить состояние всех активных тестов во всех фазах.
Переключить фазу: Переключить состояние только тех тестов, которые видны в текущей выбранной фазе.
По умолчанию: Сбросить состояние всех тестов в соответствии с их маркером # PhaseSwitcher_Default:.
Применить изменения: Физически перемещает параметрические папки ./test/ для измененных тестов между директориями tests/RegressionTests/Yaml/Drive/ и RegressionTests_Disabled/Yaml/Drive/, тем самым переключает состояние теста.
По кнопке карандаша можно открыть сценарий в редакторе.
Статус-бар: Отображает текущий статус (загрузка, наличие изменений, результат применения).
Сборка Тестов:
Позволяет запустить скрипт сборки (BuildScenarioBDD) с установленными параметрами.
В настройках расширения можно указать параметры тестовой почты.
Автоматически вычищает "ненужные" шаги из определенных тестов (001_Company, I_start_my_first_launch)
Управление сборкой:
Выпадающее меню Accounting: можно выбрать тип бух.учета перед сборкой тестов.
Чекбокс Drive Trade: можно выбрать режим тестов для Production или Sales&Services.
Собрать тесты: запускает скрипт сборки.
Отдельный статус-бар для процесса сборки.
Требования
Visual Studio Code
Проект открыт в корневой папке репозитория.
Для сборки Node.js и npm.
Заполненные пути и параметры в настройках VS Code для секции "Сборка Тестов".
Или Extensions View -> "..." -> "Install from VSIX..." -> Выберите скачанный/собранный .vsix файл.
Настройка:
В настройки расширения можно перейти стандартным методом через общие настройки или по кнопке настроек с панели Activity Bar.
Включить панель "Phase Switcher": переключает отображение секции Phase Switcher в Activity Bar (по умолчанию вкл.)
Включить панель "Сборка тестов": переключает отображение секции Сборщика тестов в Activity Bar (по умолчанию вкл.)
Настройки тестовой почты:
Email Address: адрес почтового ящика, который используется в тестах
Email Password: пароль от почтового ящика, используемого в тестах. В целях безопасности задается отдельно через команду, сохраняется в безопасном хранилище VS Code (SecretStorage). Отдельной командой можно удалить из хранилища.
Email Outgoing Port: Порт исходящей почты (EMailTestOutgoingMailPort).
Email Protocol: Протокол почты, IMAP или POP3 (EMailTestProtocol).
Настройки базы сборки:
Empty Infobase: Путь к каталогу пустой файловой информационной базы, на которой будет запускаться обработка сборки сценариев (EmptyInfobasePath).
Db User: Имя пользователя для подключения к пустой ИБ (DBUser).
Db Password: Пароль пользователя для подключения к пустой ИБ (DBPassword).
Split Feature Files: Значение для SplitFeatureFiles (по умолчанию выкл.)
Настройки системных путей:
Build Path: Путь к папке для собранных тестов (BuildPath).
One CEnterprise Exe: Полный путь к исполняемому файлу 1cv8.exe
PowerShell: Путь к исполняемому файлу PowerShell (PSPath).
Команды:
Большинство команд доступны через контекстное меню (правый клик в редакторе) или палитру команд (Ctrl+Shift+P или Command+Shift+P, начните вводить 1C:Drive).
Для навигации и вставки могут использоваться горячие клавиши (проверьте или настройте их в Keyboard Shortcuts).
Phase Switcher:
Откройте через иконку в Activity Bar.
Выберите нужную фазу из выпадающего списка.
Отметьте/снимите отметки у тестов. Названия измененных тестов станут жирными.
Нажмите Применить изменения.
Используйте Обновить, если вы вручную изменили структуру папок тестов.
Сборка Тестов:
Откройте через иконку в Activity Bar.
Выберите режим бух.учета Accounting
(опционально) Выберите режим DriveTrade
Нажмите Собрать тесты
Скриншоты
Панель в Activity Bar
Контекстное меню
Автодополнение строк
Окно описания шага
Известные Проблемы
При создании нового Главного сценария, список тестов в Phase Switcher нужно обновить вручную через кнопку Обновить.