Repository navigation
Releases
KOT for 1C 3.0.0
3.0.0
Крупное обновление относительно 2.7.1: от редактирования исходников до сборки, выполнения и отладки тестов в одной рабочей области VS Code.
Коротко о главном
- Новая рабочая область: боковые панели Менеджера тестов, Библиотеки и Информационных баз, а также Свойства теста рядом с редактором.
- Два формата СППР и самостоятельные feature: единый YAML или
scen.feature+meta.yaml, главные и вложенные процессы, преобразования между форматами и видами сценариев. - Управление Vanessa из VS Code: запуск через MCP, F11, выполнение выделения и запуск с шага, точки останова, запись действий, результаты и переменные сеанса.
- Расширенная Библиотека: встроенные шаги нужной версии Vanessa, экспортные сценарии и пользовательские BSL-шаги со сборкой EPF.
- Настройки для каждого проекта: отдельные профили сборки и запуска, общие каталоги и группы, мастер первой настройки.
- Учебная мастерская и новое руководство: примеры, упражнения, снимки интерфейса и видео для знакомства с возможностями KOT.
Рабочая область и начало работы
- Менеджер тестов, Библиотека и Информационные базы доступны в боковых панелях; для подробной работы сохранены полноразмерные представления.
- Добавлена панель Свойств теста: шапка, метаданные, параметры, вложенные сценарии, шаги процесса, теги, настройки запуска и вложения. Из неё можно сохранить и запустить тест, открыть его исходники и выполнить преобразование.
- Для самостоятельной feature доступны свойства заголовка и сценариев, теги, группа, описание и JSON запуска. При открытии собранной feature можно перейти к свойствам её исходника.
- Менеджер тестов разделяет главные сценарии, главные процессы и самостоятельные feature. Доступны групповой выбор, фильтры состояния, настройка порядка групп, подсветка зависимостей и показ связанных тестов.
- Добавлен мастер для нового проекта, существующего проекта СППР или Vanessa и перехода с прежних версий KOT. Перед применением он показывает план создания файлов, настроек и переноса данных; подключение выполнения можно отложить.
- При применении мастер показывает текущий этап и количество обработанных файлов, сохраняя прокрутку страницы. Подготовка Vanessa выполняется отдельно после сохранения настроек; при неудаче её можно повторить.
- Настройки собраны на отдельной странице KOT: поиск, тематические разделы, выбор области VS Code, наследуемые значения, черновик изменений и переход в нативные настройки. Пути выбираются через диалоги; расположения внутри проекта могут сохраняться относительно его корня.
Исходники СППР, процессы и преобразования
- Добавлен формат
scen.feature+meta.yaml: текст шагов хранится отдельно от шапки, параметров и служебных данных. Оба документа участвуют в подсказках, диагностике, навигации, синхронизации параметров и вложенных вызовов, сохранении и сборке. - Поддержаны главные и вложенные процессы СППР: создание, редактирование свойств, параметры и теги, добавление, удаление и перестановка шагов. Процесс с настройками запуска можно собирать и выполнять самостоятельно.
- Самостоятельные feature Vanessa включены в Менеджер тестов и Библиотеку. Для них доступны создание по русскому или английскому шаблону, организация по группам, подготовка JSON запуска и выполнение без компиляции СППР.
- Добавлены преобразования YAML ↔ feature + meta, главный ↔ вложенный сценарий или процесс, вложенный ↔ экспортный сценарий. Доступные варианты собраны в меню преобразований Свойств теста, Библиотеки и редактора.
- Преобразования сохраняют идентичность теста и переносимые данные, обновляют распознаваемые вызовы и передаваемые аргументы. Несовместимые конструкции и конфликты проверяются до записи. Экспорт можно сохранить в новый файл или добавить в существующую feature библиотеки.
- После преобразования формата, в том числе при сохранении YAML, Свойства теста переключаются на новые исходники, сохраняя выбранные настройки запуска и закрепление панели.
- Добавлено массовое преобразование YAML-сценариев в feature + meta из меню «Обслуживание»: выбор тестов, прогресс, отмена между файлами и итоговый отчёт. Есть отдельная настройка преобразования YAML при сохранении.
Библиотека и работа в редакторе
- Добавлена полная Библиотека с поиском, категориями, избранным, предпросмотром определения и его параметров. В ней объединены шаги Vanessa, пользовательские BSL-шаги, экспортные сценарии, вложенные сценарии и процессы СППР.
- Встроенные шаги выбираются из версионного каталога Vanessa. Версия определяется по её поставке; предусмотрены явный выбор и резервный локальный каталог.
- Подсказки, поиск по смыслу через
!, ховеры, диагностика и переходы используют общий каталог определений для YAML и feature. Контекст аргумента учитывается отдельно от текста шага; имена элементов, таблиц, колонок и значения могут поступать из активной формы 1С. - F12 работает по всей строке вызова. В собранной feature доступен переход к исходной строке или окружающему вложенному сценарию по карте сборки. Ссылки и подсветка связей учитывают прямые и косвенные зависимости.
- Добавлены создание и переименование экспортных сценариев с обновлением вызовов, а также создание пользовательских шагов. EPF-библиотеку можно собрать из проекта обработки или создать из отдельного BSL; готовую EPF можно выгрузить в исходники через Конфигуратор.
- Для пользовательских шагов отображается состояние библиотеки. Несобранные и требующие пересборки шаги доступны для изучения, но исключаются из IntelliSense, копирования, вставки и перетаскивания до успешной сборки.
- Согласована подсветка параметров, переменных и Gherkin-таблиц в YAML и feature. При удалении целой ячейки шапки вместе с разделителем удаляется соответствующий столбец таблицы; очистка названия сохраняет столбец.
- Действия редактора сгруппированы в контекстных меню. Расширена русская и английская локализация панелей, подсказок и сообщений; подписи переменных согласованы с Vanessa Automation.
Выполнение и отладка в Vanessa Automation
- Добавлены запуск управляемого MCP-сеанса через служебную базу KOT и подключение к уже работающей Vanessa. Поддержаны обнаружение локального сеанса, автоматическое подключение и опциональный автозапуск; состояние соединения видно в строке состояния VS Code.
- Из Менеджера тестов, Свойств теста и редактора доступны запуск feature, выполнение одного шага по F11, выполнение выделенных обычных шагов, запуск с выбранной строки, остановка и продолжение с точки останова.
- Во время прогона кнопка записи в редакторе заменяется кнопкой остановки. Она остаётся доступной при временной потере состояния Vanessa; повторное нажатие отключено на время подтверждения остановки.
- Шаги исходника СППР можно выполнять по карте собранной feature. Для простого обычного шага YAML доступна проба через служебную feature без полной компиляции.
- Добавлены точки останова в редакторе и отображение подтверждённых результатов строк. Данные MCP дополняются журналом выполнения; управляемый сеанс получает постоянный журнал, используемый при запуске разных feature. Ховер ошибки содержит её текст и доступные переходы к журналу и исходнику.
- Перед действием сверяется содержимое feature в VS Code и Vanessa. Подготовленный файл переиспользуется при пошаговой работе; несохранённые изменения в редакторе Vanessa защищены от перезаписи.
- Добавлена запись действий в клиенте тестирования с последующей вставкой шагов у каретки в YAML или feature. Вставку можно отменить одним Undo.
- Добавлена панель локальных и глобальных переменных Vanessa с автообновлением, записью строковых значений и удалением локальных переменных.
- Доступны поиск шагов и проверка синтаксиса в работающем сеансе, чтение состояния и результатов, журналы, снимки клиента и сохранение диагностического ZIP. Стандартные секретные поля скрываются в текстовом отчёте; пакет не отправляется автоматически.
Form Explorer и информационные базы
- Form Explorer получает данные через MCP Vanessa наряду с прежним мостом. Доступны выбор окна, дерево групп, элементов и колонок, поиск, фильтры и подробности выбранного элемента.
- Для выбранного элемента можно получать нативные шаги Vanessa, а для текущей формы — готовые проверки. Результаты можно копировать и вставлять в сценарий; дополнительные инструменты доступны по возможностям подключённого сеанса.
- Информационные базы объединяют сохранённые подключения KOT и фактических клиентов текущей Vanessa. Для одной базы поддерживаются несколько клиентов с разными пользователями и параметрами подключения.
- Из панелей баз доступны добавление, редактирование, подключение и отключение клиента. Клиента, существующего только в Vanessa, можно сохранить в KOT. Сохранённые подключения могут автоматически добавляться в работающую Vanessa без запуска клиентов и перезаписи конфликтующих записей.
- Добавлены индикация работы базы и клиентов, выбор клиента для открытия с Vanessa и Form Explorer, восстановление из установленного DT-шаблона и обновление из CF-шаблона.
Сборка, параметры и совместная работа
- Профили параметров СППР, дополнительные параметры Vanessa, начальные глобальные переменные и активный выбор привязаны к проекту. Относительные пути позволяют хранить проектные параметры без привязки к одному рабочему месту.
- Расширена поддержка контракта компилятора СППР: корни сценариев и процессов, параметры и их типы, таблицы, исходящие значения, варианты теста и фильтры. Обязательные пути и значения проверяются перед запуском компиляции.
- Сборка выполняется изолированными заданиями с ограниченной параллельностью и отменой. Общий отчёт показывает итог, ошибки со ссылками на исходные строки, результаты по настройкам запуска и раскрываемые технические подробности.
- Актуальность сборки учитывает исходник и его зависимости. Изменения вложенных и экспортных сценариев, парного feature и преобразования отражаются в состоянии собранных тестов.
- В Менеджере тестов и Библиотеке выделены «Собранные файлы». Поддерживаются результаты как в отдельном каталоге вложений, так и рядом с собранной ...
2.7.0
AI-инструменты для тестировщика
- Добавлен AI-отчет по diff конфигурации: модель анализирует изменения в
configurationSourceDirectoryотносительно главной ветки, опционально сопоставляя с предоставленной User Story, и сохраняет markdown-отчет для тестировщика с фокусом на пользовательское поведение, набор проверок, роли и данные. - Добавлено AI-ревью измененных тестов: модель сопоставляет diff автотестов с diff конфигурации и опциональным User Story, после чего формирует отчет по покрытию, пропущенным проверкам, слепым зонам и хрупким местам.
- В
Test Managerдобавлено менюThinkingс запуском AI-функций. - В AI-настройках добавлен параметр
kotTestToolkit.ai.apiVersionдля провайдеров, которым нужен query-параметр?api-version=.... - Доработана генерация
KOTМетаданные.Описание: лучше учитываются параметры сценария, логические ветки, окна, отчеты, табличные проверки и вложенные сценарии; структура результата стабильнее для больших YAML-сценариев.
Редактор и IntelliSense
- IntelliSense редактора интегрирован с
KOT Form Explorer: в аргументах шагов доступны окна/формы, элементы, таблицы, колонки и текущие значения из активной формы, включая связку поле <-> значение внутри уже введенного шага. - Добавлено IntelliSense параметров текущего сценария при вводе
[вТекстСценария; список строится по объявлениям изПараметрыСценария. - Для параметров вида
[Parameter]добавлен hover со значением по умолчанию из блокаПараметрыСценарияи быстрым редактированием этого значения. - Доработана Gherkin-подсветка внутри
ТекстСценарияYAML-сценариев: подсвечиваются ключевые слова, аргументы в кавычках, параметры вида[Parameter], плейсхолдеры, таблицы, комментарии и управляющие блокиIf/ElseIf/Else/EndIf,Do/EndDo,Try/Except/EndTryи русские аналоги. - YAML-сценарии остаются в
yamllanguage mode, поэтомуeditor.formatOnSaveне выравнивает весь текст сценария как обычный блокfeature. (#39)
KOT Form Explorer
- Основной пользовательский flow Form Explorer переведен со старой adapter/cfe-механики на мост через
TestManager+TestClient. Это значительно ускорило и упростило процесс запуска базы, а также исправило ряд проблем с обнаружением элементов. - Исправлены визуальные ошибки интерфейса Form Explorer.
- Закрытие тест-клиента теперь очищает текущий snapshot, а также не оставляет открытым мост (и наоборот).
Другие исправления и улучшения
- Исправлена подстановка строки подключения к серверной базе при запуске теста (#40).
- Исправлено отображение аргументов шагов после автокомплита IntelliSense, а также реализована автоматическая подстановка курсора на место аргументов после автокомплита шага.
- Исправлена индикация связанных сценариев, если папка с тестами находится вне Workspace.
- Добавлен небольшой набор демо тестов (#28).
2.6.0
AI-описание тестов
- Добавлена функция генерации содержимого блока
KOTМетаданные.Описаниечерез подключаемую LLM. (#30) - В блоке
KOTМетаданные.Описание:появилась кнопкаОписать с помощью ИИ; то же действие доступно командойKOT - Generate KOT metadata description with AI. - В настройках расширения добавлена отдельная секция
AIс параметрами подключения к LLM и возможностью переписать системный промпт. - Поддержаны OpenAI-compatible API для локальных или онлайн моделей.
- При генерации KOT учитывает текущий текст сценария, объявленные параметры и вложенные сценарии.
- Результат нормализуется в структуру
Проверяется/Процесс/Параметры и развилкис пустыми строками между блоками. Помимо этого модель может дать рекомендации по улучшению сценария.
Менеджер платформ 1С
- Добавлен каталог платформ 1С и отдельный менеджер платформ. Его можно открыть через настройки или из меню действий Test Manager. (#34)
- KOT автоматически находит установленные платформы и выставляет самую свежую платформу по умолчанию.
- Платформы можно вручную добавлять, удалять, переименовывать и переключать.
- Добавлена настройка, позволяющая отключить выбор платформы при запуске и использовать платформу по умолчанию.
СборкаТекстовСценариеввсегда использует платформу по умолчанию.
KOT Infobase Manager
- В KOT Infobase Manager добавлено скрытие баз и режим
Show hidden. - Скрытые служебные базы больше не попадают в picker-ы выбора ИБ для Vanessa и Form Explorer.
- Добавлена возможность для каждой базы задать платформу индивидуально.
- Добавлена кнопка открытия менеджера эталонных баз.
Эталонные базы и работа с настройками главных сценариев
- Добавлен менеджер эталонных баз для редактирования
bases.yamlкак источникаModelDBSettingsв параметрах СППР. (#35) - Эталонные базы можно создавать, редактировать, импортировать и экспортировать через UI.
- Содержит в себе пути до
DTи профили пользователей для конкретной базы. - При создании главного сценария теперь можно выбрать эталонную базу и профиль пользователя. В
test.yamlотдельно сохраняются имя эталонной базы, идентификатор базы и профиль пользователя. - Теперь принцип работы с главными сценариями и подготовкой тестовых баз ближе к СППР.
KOT Form Explorer
- Для
Start infobaseдобавлен выбор целевой платформы 1С. - Ускорена повторная установка runtime-расширения за счет переиспользования подготовленных артефактов.
- Для установки и запуска Form Explorer добавлены режимы
direct,cfeиtarget: (#37)directвыбран по умолчанию и подходит для самого быстрого старта, когда целевая база соответствует текущей ветке или хотя бы не сильно отличается от нее, этот режим загружает сгенерированное расширение напрямую в выбранную базу;cfeэто промежуточный режим: он по-прежнему использует конфигурацию из ветки, но устанавливает runtime через builder-ИБ и пакет.cfe, поэтому работает медленнееdirect, зато обычно предсказуемее;targetсначала выгружает конфигурацию самой выбранной базы, затем генерирует runtime уже по этой выгрузке и устанавливает его обратно в ту же базу; это самый медленный, но и самый точный режим, когда база больше не соответствует текущей ветке.
- Исправлена генерация compatibility mode для runtime-расширения.
- Добавлена возможность запускать исследование форм под пользователем, отличным от Administrator.
- Исправлено отображение длинных текстов.
Vanessa Automation
- Для запуска теста и Vanessa Automation добавлен выбор целевой платформы 1С.
- Первый запуск Vanessa Automation больше не требует ручной правки
conf.cfg, что могло вызвать проблемы при отсутствии системных прав администратора. - Служебная startup-ИБ теперь создается из встроенного шаблона.
- При подготовке к запуску теста если пользователь выбирает
Keep current infobase contentsKOT больше не спрашивает про восстановлениеDT, а сразу переходит к выбору обновления конфигурации; - При выборе восстановления доступны наряду с
No DT restoreиRestore from another DT, еще иRestore from etalon DT(если найденDTизbases.yaml, который указан вModelDBSettings), что ближе к процессу работы в СППР.
Менеджер параметров и JSON-артефакты
- В менеджере параметров появились профили наборов настроек с автосохранением. (#36)
- Вкладка параметров СППР полностью переработана: обязательные параметры закреплены, добавлены значения по умолчанию и предупреждения по незаполненным полям.
- ScenarioFolder теперь используется как источник сканирования директорий для сценариев.
- Старая модель runtime-путей заменена на
kotTestToolkit.runtime.directory, по умолчанию использующий.vscode/kot-runtime. - Добавлено превью
yaml_parameters.json. - Для каждого сценария теперь поддерживаются
built JSONиcombined JSON. - В Test Manager добавлено меню
Open JSONс открытиемbuiltиcombined JSON. - В Test Manager в выпадающем меню
Build testsможно быстро переключать профили параметров.
Редактор и навигация
- Для YAML-файлов сценариев (
ТипФайла: "Сценарий") добавлено автоматическое переключение language mode вFeature/Gherkin, чтобы редактор использовал привычную подсветку синтаксиса без ручногоConfigure File Association. Это поведение переключается в настройках. - В контекстное меню YAML-сценария добавлена команда открытия папки
files. (#33) - В шапке главного сценария добавлено быстрое действие открытия связанного
test.yaml. - Hover-подсказки расширены на
test.yaml, а также блоки параметры теста, параметры сценария и вложенные сценарии. - Для
test.yamlдобавлены быстрые редакторные действия для смены эталонной базы, профиля пользователя и связанного сценария.
Другие улучшения
- Исправления стилей панелей.
- Удалены лишние настройки, дублирующие логику менеджера параметров.
- Настройки реорганизованы.
2.5.1
Новые возможности
KOT Form Explorer
- Добавлен исследователь форм 1С
KOT Form Explorer(#26):- панель в VS Code для исследования текущей управляемой формы 1С;
- автоматический или ручной режим обновления информации о форме;
- доступна информация о текущей форме, ее элементах и значениях, таблицах Gherkin;
- поиск элементов по тексту или по клику в интерфейсе 1С;
- предложения шагов Vanessa Automation для текущего элемента.
- При запуске базы из интерфейса
KOT Form Explorerавтоматически устанавливается.cfe-адаптер для связи с расширением. - В snapshot selector
KOT Form Explorerотображается имя ИБ из лаунчера 1С, если путь базы удалось сопоставить сibases.v8i. - Добавлена кнопка открытия
KOT Form Explorerв меню...Test Manager.
Функционал был проверен на конфигурации 1C:Drive и может содержать ошибки при работе с другими конфигурациями. Просьба оставлять issue при обнаружении проблем.
KOT Infobase Manager
- Добавлен отдельный
KOT Infobase Manager(#25):- единый список ИБ из лаунчера 1С, runtime-артефактов, snapshot-ов и вручную добавленных путей;
- для базы показываются роли, источник, последний запуск, последний snapshot, последний run-log и текущее состояние;
- В менеджере баз доступны операции:
- создать, копировать, пересоздать, восстановить из
DT, выгрузить вDT, сохранить конфигурацию в.cf, обновить конфигурацию из папки или.cf; - добавить/убрать из лаунчера 1С, открыть базу в 1С или Designer, открыть папку и связанные логи;
- переименовать базу, перенести или переназначить каталог, полностью удалить файлы и запись из лаунчера 1С.
- создать, копировать, пересоздать, восстановить из
- Для каждой базы доступна отдельная настройка ключей запуска 1С.
- Список баз поддерживает режимы сортировки
Last opened / Alphabetical / Manual order. - Для
KOT Form Explorerи подготовки запуска тестов Vanessa используется общий механизм:- picker работает с единым списком обнаруженных баз и умеет сразу открыть
KOT Infobase Manager; - при установке/запуске
Form Explorerи при запуске тестов Vanessa в менеджер сохраняются роли и метаданные последнего использования базы.
- picker работает с единым списком обнаруженных баз и умеет сразу открыть
Vanessa Automation: внешний трекинг и подготовка целевой ИБ
Помимо ранее реализованного трекинга тестов, запущенных непосредственно из расширения, теперь есть возможность отслеживать любой запущенный тест (в том числе полезно для трекинга процесса прохождения тестов на сервере).
- Добавлено автоопределение активных прогонов Vanessa по свежему появлению или обновлению run-логов в
kot-runtime/vanessa:- старые лежащие в папке логи больше не считаются актуальным прогоном;
- если старый лог перезаписывается новым прогоном, статус автоматически стартует заново;
- единичное обновление run-лога на старте можно отфильтровать, чтобы не подхватывать случайные ручные шаги;
- автоопределенный трекинг автоматически снимается по таймауту неактивности;
- при сопоставлении лога со сценарием из Test Manager статус подхватывается без ручного запуска трекинга.
- Добавлены команды контекстного меню редактора:
KOT - Track scenario run by log for opened feature— выбрать лог и начать трекинг для открытогоfeature.KOT - Switch tracked run for opened feature— быстро переключить активный отслеживаемый прогон.KOT - Stop tracked runs for opened feature— остановить внешнее отслеживание для открытогоfeature.KOT - Track run by opened log file— запустить трекинг прямо из открытого.log(по заголовкуFeature: ...) с автопереходом к соответствующемуfeature-файлу.
- Для одной
featureподдержано несколько параллельно отслеживаемых прогонов с удобным переключением по пути к логу. - Для запуска тестов из Test Manager добавлена подготовка целевой ИБ:
- можно выбрать существующую файловую ИБ из лаунчера 1С или создать новую;
- при создании новой ИБ путь выбирается через системный выбор папки, затем запрашивается имя базы для лаунчера 1С и после успешного создания база автоматически регистрируется в
ibases.v8i; - для существующей и новой ИБ доступны диалоги восстановления из
DTи обновления конфигурации; - существующую файловую ИБ можно пересоздать с нуля в той же папке перед подготовкой;
- конфигурацию можно обновить либо из
kotTestToolkit.formExplorer.configurationSourceDirectory, либо из выбранного.cf; - для новой базы запуск блокируется, если пользователь не выбрал ни восстановление из
DT, ни обновление конфигурации; - подготовка (
create,restore DT,update configuration) сопровождается пошаговой progress-индикацией.
Исправления и доработки
Редизайн интерфейса
- Обновлен интерфейс плагина.
- Убраны лишние интерфейсные элементы.
Другие улучшения
- Наличие пользовательской служебной базы для запуска Сборки сценариев или Vanessa Automation более не требуется, расширение само создает базу в фоновом режиме.
- Добавлено автоопределение установленной платформы 1С и автоподстановка пути к
1cv8c.exeв настройки. - Добавлена настройка
kotTestToolkit.runVanessa.showOutputPanelдля управления автооткрытием Output при запуске Vanessa Automation, включая обычный запуск и ручные debug-режимы. СборкаТекстовСценариеви встроенный запуск Vanessa переведены на общую lightweight startup-ИБ.- Исправлено поведение кнопки
Defaultsпри первом запуске и состояние чекбоксов при сборке тестов. (#23) - Исправлено закрытие меню
More actionsпри активном прогоне теста. - Улучшена работа
Test Managerпри подключении через VS CodeRemote Tunnel:- webview панели теперь рендерится сразу, без ожидания полного первичного прогрева кеша сценариев;
- список главных сценариев отдается в интерфейс раньше, а синхронизация run artifacts и
Favoritesдогружается асинхронно после первого рендера.
- Ускорен серверный поиск сценариев и построение кеша в remote-среде:
- обход файлов в
yamlSourceDirectoryпереведен на прямое чтение через серверныйfsс fallback наworkspace.fs; - поиск
scen.yamlи навигационный fallback больше не зависят отworkspace.findFiles, что уменьшает задержки на удаленном extension host.
- обход файлов в
- Доработана навигация между сценариями при медленном или еще не завершенном cold start:
- команды открытия сценариев и переходы из
hover/featureиспользуют прямой server-side поиск файла, даже если полный кеш еще не готов; - fallback-поиск теперь использует фактический
kotTestToolkit.paths.yamlSourceDirectory, а не жестко заданныйtests/**/*.yaml.
- команды открытия сценариев и переходы из
- Улучшена непрерывность live-подсветки шагов для встроенных запусков тестов Vanessa Automation.
- Доработано IntelliSense переменных по символу
$: обычные переменные подставляются как$VariableName$, пользовательскиеGlobalVarsиз Менеджера параметров как$$GlobalVar$$, при ручном вводе$$в подсказках показываются только глобальные переменные, а в выдаче IntelliSense и hover по переменной теперь отображается ее значение. (#29) - Расширено и уточнено определение шагов, создающих переменные: IntelliSense и hover теперь учитывают не только базовые
save/запоминаю, но и дополнительные шаблоны сохранения, копирования иfind or create/нахожу или создаюв локальный и глобальный контекст, при этом шаги сkey/ключбольше не считаются обычными переменными. - Расширено распознавание управляющих блоков в диагностике сценариев: теперь учитываются
If/ElseIf/Else/EndIf,Do/EndDo,Try/Except/EndTry, русские аналоги, а также циклические формы шагов вродеAnd ... I do,And ... I execute,И ... я выполняю,И пока ... тогда. - Для открывающих управляющих конструкций в IntelliSense добавлена автоподстановка закрывающей строки: при выборе
If/Do/Tryи русских аналогов вставляется блок с пустой строкой внутри и соответствующимEndIf/EndDo/EndTryилиКонецЕсли/КонецЦикла/КонецПопытки. - Доработаны Gherkin-таблицы: при вставке многострочных шагов из IntelliSense строки таблицы теперь автоматически получают корректный относительный отступ от строки шага, а выравнивание таблиц на сохранении дополнительно нормализует и их собственный отступ.
- Доработано создание новых YAML-сценариев:
- служебные поля
ДанныеСценарияиДанныеТестатеперь подставляются изkotTestToolkit.newScenarioDefaults, а при создании можно выбрать: взять defaults или вручную пройти по оставшимся полям шапки; - для
ФункцияСистемыдобавлен отдельный каталог и UI-менеджер, а в YAML всегда согласованно записываютсяФункцияСистемыиUIDФункцияСистемы; для новой записи UID генерируется автоматически; - при создании главного сценария выбор группы в Test Manager теперь показывает существующие группы и позволяет сразу ввести новую;
- в шапке YAML для
ФункцияСистемыиUIDФункцияСистемыдобавлен быстрый✎-переключатель: при выборе новой функции системы оба поля обновляются синхронно; - в hover по YAML добавлены описания ключей шапки сценария,
test.yamlиKOTМетаданные(#21).
- служебные поля
- В контекстное меню теста в
Test Managerдобавлены действия:- открыть файл настроек теста
test/<Имя>.yaml; - удалить главный сценарий целиком с подтверждением, включая папку сценария,
test,filesи очистку связанного состояния расширения.
- открыть файл настроек теста
2.3.1
Новые возможности
Vanessa Automation: live-подсветка выполнения шагов в feature-файле
- Добавлена live-подсветка шагов в
featureво время прогона:- текущий шаг;
- пройденные шаги (зеленым);
- упавший шаг (красным);
- после завершения теста подсветка сохраняется до изменения или до пересборки
feature-файла.
Навигация по ошибкам и вложенным сценариям
- Для упавшего шага добавлен расширенный hover с полным блоком ошибки.
- В hover добавлены действия
Open run logиOpen failed nested scenario. - Добавлены быстрые переходы:
Open failed step(к строке ошибки вfeature);Open failed nested scenario(к вложенному сценарию по контексту отступов).
- Для
featureдобавлена команда контекстного меню: открыть вложенный сценарий по позиции курсора.
Test Manager
- Добавлен прогресс выполнения по строкам
feature:- проценты в строке сценария;
- счетчик шагов
x/yпри наведении.
- Для
failedсценария добавлена отдельная кнопка перехода к упавшему шагу вfeature. - Изменено поведение клика по строке сценария, когда сценарий запущен — открывается
featureв live-режиме на текущем шаге;
IntelliSense и hover теперь и в feature-файлах
- В
feature-файлах включены:- IntelliSense по шагам Vanessa (включая семантический поиск по префиксу
!); - IntelliSense по переменным;
- hover-подсказки по шагам и вызовам сценариев;
- IntelliSense по вложенным сценариям остается функционалом yaml-only.
- IntelliSense по шагам Vanessa (включая семантический поиск по префиксу
Исправления и доработки
- Когда запущен хотя бы один тест, блокируются
Build testsи чекбоксы выбора (чтобы не затерлись файлы во время прохождения теста); - Во время старта прогона Output панель больше не открывается автоматически (меньше информационого шума).
- Для кнопки запуска упавшего теста добавлено визуальное состояние retry (иконка
playпри наведении). - Добавлен опциональный legacy-режим сборки: при
Build testsвременно выносятсяtest/*.yamlвыключенных сценариев в системную временную папку и автоматически возвращаются после завершения сборки.
2.2.1
UI: Test Manager
- Кнопки редких действий в шапке
Test Managerреорганизованы в единый блокMore actions(...). - Добавлены команды
Refresh steps library(Обновить библиотеку шагов) иRepair scenario files(Исправление файлов сценариев) в меню панели Менеджера тестов. - Для лучшей ясности, текст статуса выбора тестов изменен с
Selected: X/YнаWill be built: X/Y.
Пакетное исправление и проверка сценариев
-
Добавлены команды для исправления форматирования сценариев:
KOT - Repair and validate changed scenarios (safe batch)/KOT - Исправить и проверить измененные сценарии (безопасный пакетный режим)- используются сохраненные измененные сценарии и измененные в Git.yamlфайлы;KOT - Repair and validate all scenarios in YAML source directory (high load)/KOT - Исправить и проверить все сценарии в yamlSourceDirectory (высокая нагрузка)- обрабатываются все сценарии вyamlSourceDirectory;- Данные команды доступны в меню
More actions(...) в панели Менеджера тестов.
-
Исправлена критическая ошибка, случайным образом приводящая к потере текстов сценариев при использовании функции VSCode
Replace in Filesс включенным Auto Save:- полная post-save обработка файла со стороны плагина выполняется только для активного файла;
- прочие измененные сценарии ставятся в очередь для опциональной команды
KOT - Repair and validate changed scenarios (safe batch)/KOT - Исправить и проверить измененные сценарии (безопасный пакетный режим); - снижен фоновый шум от post-save обработки.
Поддержка старых тестовых сред, еще не готовых к миграции со стороны CI/CD
- Добавлен переключатель автодобавления/восстановления
KOTМетаданныедля всех типов сценариев (kotTestToolkit.editor.autoEnsureKotMetadataForMainScenarios), по умолчанию включен. - Миграция legacy-тегов
# PhaseSwitcher_*вKOTМетаданные(kotTestToolkit.editor.enableLegacyMetadataMigrationForMainScenarios) оставлена опциональной и по умолчанию включена; применяется только для главных сценариев и работает при включенномautoEnsureKotMetadataForMainScenarios.
2.1.1
Новые возможности
Интеллектуальные подсказки шагов по запросу своими словами:
- Добавлены интеллектуальные семантические подсказки шагов в IntelliSense по префиксу
!:- можно вводить формулировку желаемого шага своими словами, например:
!условие, что открылось окно,!проверка фоновых заданий,!сохранить выражение в переменную, и плагин предложит соответствующие шаги из библиотеки шагов Vanessa Automation; - для подсказок шагов установлен приоритет языка по тегу
#language:в текущем сценарии.
- можно вводить формулировку желаемого шага своими словами, например:
Управление кодом и именем сценария:
- Добавлена команда
KOT - Изменить имя главного сценария:- за одно действие меняет
ДанныеСценария.ИмяиДанныеСценария.Кодв шапке сценария; - автоматически переименовывает папку главного сценария;
- обновляет список в Менеджере тестов.
- за одно действие меняет
- Добавлена команда
KOT - Изменить имя вложенного сценария:- за одно действие меняет
ДанныеСценария.Имявscen.yaml, а также все вызовы данного сценария во всех связанных тестах;
- за одно действие меняет
- Добавлена команда
KOT - Изменить код вложенного сценария:- за одно действие меняет
ДанныеСценария.Кодвscen.yaml; - автоматически переименовывает папку вложенного сценария под новый код.
- за одно действие меняет
- Данные команды доступны как через контекстное меню в
KOT - Редактирование, так и из самого редактора по иконке карандаша напротив соответствующих полей.
Навигация по вызовам вложенных сценариев:
- Открыть вложенные сценарии теперь можно не только через контекстное меню: в hover по вызову вложенного сценария добавлена ссылка
Open scenario/Открыть сценарий.
Исправления и доработки
- Улучшено автосворачивание секций
ВложенныеСценариииПараметрыСценарияпри открытии файла:- сворачивание больше не выполняется через временное перемещение курсора;
- устранены визуальные “прыжки” выделения/позиции при открытии сценария.
2.0.0
Breaking changes
- Расширение переименовано в
KOT for 1C(Keep On Testing). - Панель Phase Switcher переименована в Менеджер тестов / Test Manager.
- Пункты контекстного меню и команды теперь имеют префикс
KOT -(#10) - Команды и настройки переведены на пространство имен
kotTestToolkit.*. - Удалены устаревшие 1C:Drive-специфичные функции: настройки тестовой почты и
RepairTestFile. - Новый идентификатор в Marketplace:
AlexeyEremeev.kot-test-toolkit.
Внимание: прошлая версия плагина (1C:Drive Test Helper 1.11.2) не поддерживает прямое обновление на эту версию, необходимо установить новый плагин (KOT for 1C), удалив старое расширение!
Новые возможности
Менеджер тестов и поддержка Vanessa Automation
- Добавлен запуск Vanessa Automation прямо из панели Менеджера тестов (бывш. Phase Switcher) (#13):
- Два режима запуска: обычный автоматический прогон выбранных тестов и запуск для произвольной работы.
- Отображение статуса сценария: выполняется, успешно, с ошибкой, устаревший результат (например, если был изменен какой-либо связанный вложенный сценарий).
- Возможность быстро открыть файл лога по неудачному завершению теста.
- Live-просмотр лога во время выполнения сценария (с настраиваемым интервалом обновления).
- Добавлена вкладка
Избранное:- Быстрое открытие избранного сценария, или удаление из списка.
- Drag-and-drop избранных сценариев в редактор: вставка вызова вложенного сценария с параметрами.
- Тесты можно добавлять и удалять в
Избранноечерез контекстное меню редактора. - Автодобавление новых сценариев в
Избранное(переключается в настройках). - Список избранных поддерживает сортировку по названию и по коду сценария.
- Доработан UI панелей в Activity bar (Test Manager / сборка):
- Добавлен компактный поиск по главным сценариям.
- Обновлена компоновка нижней панели сборки (
Build tests,Build FL,Accounting mode) и поведение выпадающих меню.
- Добавлена подсветка главных сценариев, на которые влияет текущий открытый файл.
- Добавлена возможность переименования групп и сценариев через контекстное меню.
Сборка тестов и Менеджер Параметров
- Доработан процесс сборки сценариев:
- Добавлена возможность отмены текущей сборки тестов.
- Выбор чекбоксов в Менеджере тестов теперь автоматически формирует
Exceptscenario/Scenariofilterдля обработки сборки (без физического перемещения файлов). - После сборки: быстрый доступ к feature-файлам и каталогу результатов (#9).
- Новый интерфейс Менеджера Параметров с вкладками:
- параметры сборки СППР (было);
- дополнительные параметры Vanessa Automation (новое);
- глобальные переменные
GlobalVars(новое). - Импорт/экспорт JSON для каждой вкладки.
- Поиск по имени параметра на каждой вкладке.
Редактор и качество сценариев
- Добавлена диагностика сценариев, подсветка ошибок и предупреждений (#14):
- неизвестные шаги и вызовы;
- лишние и недостающие параметры;
- проблемы с кавычками;
- незакрытые
If/Doблоки; - неполные служебные секции;
- дубли кода сценария.
- Функция
Quick Fixдля ошибок:- Замена на ближайший похожий шаг или вызов с сохранением аргументов строки.
- Блок
Maybe you meantс предложениями похожих шагов в описании ошибки. - Автодобавление недостающих параметров.
- Улучшены hover-подсказки и IntelliSense:
- по шагам: с фактическими аргументами из строки;
- по вызовам: с описанием сценария и краткой сводкой (сколько файлов, параметров и внутренних вызовов других сценариев) (#12).
- Улучшено автодополнение вызовов вложенных сценариев и подстановка значений параметров по умолчанию.
- Добавлено автодополнение переменных по символу
$: предлагаются переменные, ранее сохраненные в сценарии, а также пользовательскиеGlobalVarsиз Менеджера параметров, с подстановкой в формате$VariableName$. - Добавлено автовыравнивание Gherkin-таблиц и параметров вызовов сценариев при сохранении файла (#7, #15).
- Автозаполнение блоков
ВложенныеСценариииПараметрыСценариятеперь происходит только при реальных изменениях. - Добавлена проверка уникальности имени и кода при создании сценариев.
- Добавлена настройка расширения, определяющая язык для новых сценариев (
#language: ru/en). - Для редакторных функций язык теперь определяется в первую очередь по тегу
#language:в текущем файле (с fallback на настройку расширения). - Добавлена настройка расширения, переключающая видимость специфического для 1C:Drive функционала.
Метаданные сценариев
- Добавлен и поддерживается блок
KOTМетаданныедля хранения служебных данных. - Автомиграция legacy-тегов в новый формат при сохранении.
- Поддержка пользовательского описания сценария в
KOTМетаданные.Описание(#12).
Исправления и доработки
- Улучшена стабильность автосохранения и операций перезаполнения секций (#6).
- Улучшена производительность обновления кеша (#11).
- Переключение панелей в Activity bar больше не снимает блокировку во время сборки сценариев (#17).
- Доработаны локализация, контекстные меню и визуальная структура интерфейса.
- Размер
.vsixзначительно уменьшен. - Обновлены
codicons. - Реорганизация настроек.
Это было очень большое обновление, спасибо всем за идеи и поддержку!
1.11.2
🇷🇺 Русский:
- Новые возможности:
- Менеджер параметров Сборки Сценариев:
- Новый интерфейс для управления параметрами
yaml_parameters.jsonчерез удобную таблицу ключ-значение. - Параметры по умолчанию генерируются на основе настроек расширения (BuildPath, yamlSourceDirectory).
- Безопасное хранение настроек в VS Code SecretStorage.
- Поддержка загрузки/сохранения параметров из/в JSON файлы.
- Список поддерживаемых параметров доступен на ИТС.
- Новый интерфейс для управления параметрами
- Менеджер параметров Сборки Сценариев:
- Исправления:
- Исправлена недоступность кнопки обновления: Кнопка "Обновить" теперь всегда доступна, даже когда не найдено ни одного теста для Phase Switcher.
- Исправлены жестко заданные пути: Заменена жестко заданная константа
SCAN_DIR_RELATIVE_PATHна использование настройкиYamlSourceDirectory. - Исправлены непереведенные сообщения и тултипы.
- Исправлено добавление лишней строки в блок ВложенныеСценарии.
- Табуляции теперь заменяются только в начале строки.
- Сборка файла FirstLaunch теперь обрабатывает только нужные xml файлы.
- Создание новых главных сценариев теперь учитывает настройку ModelBDid (указывается в Менеджер параметров Сборки Сценариев).
- Автозамена табов и перезаполнение блоков в шапке сценариев, а также предложения автодополнения шагов, теперь работают только в YAML файлах, имеющих строку
ТипФайла: "Сценарий"(это защита yaml файлов, не относящихся к тестам).
- Удалено:
- Настройка YAML Parameters Template: Удалена в пользу нового Менеджера параметров Сборки Сценариев.
- Настройка Split Feature Files: Удалена, так как задается через Менеджер параметров Сборки Сценариев.
- Настройка BuildScenarioBDD Parameters: Удалена, так как все параметры теперь управляются через Менеджер параметров Сборки Сценариев.
🇺🇸 English:
- New Features:
- Build Scenario Parameters Manager:
- New interface for managing
yaml_parameters.jsonparameters through a convenient key-value table. - Default parameters generated based on extension settings (BuildPath, yamlSourceDirectory).
- Secure storage of settings in VS Code SecretStorage.
- Support for loading/saving parameters from/to JSON files.
- The list of supported parameters is available on ITS.
- New interface for managing
- Build Scenario Parameters Manager:
- Fixes:
- Fixed refresh button unavailability: The "Refresh" button is now always available, even when no tests are found for the Phase Switcher.
- Fixed hardcoded paths: Replaced hardcoded
SCAN_DIR_RELATIVE_PATHconstant with theYamlSourceDirectorysetting. - Fixed untranslated messages and tooltips.
- Fixed wrongly added empty string in the NestedScenario section.
- Tabs are now replaced only at the beginning of a line.
- The FirstLaunch file assembly now processes only the necessary XML files.
- Creating new main scenarios now takes into account the ModelBDid setting (specified in the Build Scenario Parameters Manager).
- Auto-replacement of tabs and refilling of blocks in the header of scenarios, as well as auto-completion suggestions for steps, now only work in YAML files that have the string
ТипФайла: "Сценарий"(FileType: “Scenario”) (it is a protection of YAML files that are not related to tests).
- Removed:
- YAML Parameters Template setting: Removed in favor of the new Build Scenario Parameters Manager.
- Split Feature Files setting: Removed as it's now configured through the Build Scenario Parameters Manager.
- BuildScenarioBDD Parameters setting: Removed as all parameters are now managed through the Build Scenario Parameters Manager.