Skip to content

Releases

KOT for 1C 3.0.0

Choose a tag to compare

@alexiosus alexiosus released this 30 Oct 13:17
281a548

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 и преобразования отражаются в состоянии собранных тестов.
  • В Менеджере тестов и Библиотеке выделены «Собранные файлы». Поддерживаются результаты как в отдельном каталоге вложений, так и рядом с собранной ...
Read more

2.7.0

Choose a tag to compare

@alexiosus alexiosus released this 21 Apr 22:51

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-сценарии остаются в yaml language 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

Choose a tag to compare

@alexiosus alexiosus released this 29 Mar 21:57

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 contents KOT больше не спрашивает про восстановление 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

Choose a tag to compare

@alexiosus alexiosus released this 24 Mar 23:06

Новые возможности

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 в менеджер сохраняются роли и метаданные последнего использования базы.

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 Code Remote 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

Choose a tag to compare

@alexiosus alexiosus released this 02 Mar 07:27

Новые возможности

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.

Исправления и доработки

  • Когда запущен хотя бы один тест, блокируются Build tests и чекбоксы выбора (чтобы не затерлись файлы во время прохождения теста);
  • Во время старта прогона Output панель больше не открывается автоматически (меньше информационого шума).
  • Для кнопки запуска упавшего теста добавлено визуальное состояние retry (иконка play при наведении).
  • Добавлен опциональный legacy-режим сборки: при Build tests временно выносятся test/*.yaml выключенных сценариев в системную временную папку и автоматически возвращаются после завершения сборки.

2.2.1

Choose a tag to compare

@alexiosus alexiosus released this 26 Feb 15:19

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

Choose a tag to compare

@alexiosus alexiosus released this 24 Feb 14:35

Новые возможности

Интеллектуальные подсказки шагов по запросу своими словами:

  • Добавлены интеллектуальные семантические подсказки шагов в IntelliSense по префиксу !:
    • можно вводить формулировку желаемого шага своими словами, например: !условие, что открылось окно, !проверка фоновых заданий, !сохранить выражение в переменную, и плагин предложит соответствующие шаги из библиотеки шагов Vanessa Automation;
    • для подсказок шагов установлен приоритет языка по тегу #language: в текущем сценарии.

Управление кодом и именем сценария:

  • Добавлена команда KOT - Изменить имя главного сценария:
    • за одно действие меняет ДанныеСценария.Имя и ДанныеСценария.Код в шапке сценария;
    • автоматически переименовывает папку главного сценария;
    • обновляет список в Менеджере тестов.
  • Добавлена команда KOT - Изменить имя вложенного сценария:
    • за одно действие меняет ДанныеСценария.Имя в scen.yaml, а также все вызовы данного сценария во всех связанных тестах;
  • Добавлена команда KOT - Изменить код вложенного сценария:
    • за одно действие меняет ДанныеСценария.Код в scen.yaml;
    • автоматически переименовывает папку вложенного сценария под новый код.
  • Данные команды доступны как через контекстное меню в KOT - Редактирование, так и из самого редактора по иконке карандаша напротив соответствующих полей.

Навигация по вызовам вложенных сценариев:

  • Открыть вложенные сценарии теперь можно не только через контекстное меню: в hover по вызову вложенного сценария добавлена ссылка Open scenario / Открыть сценарий.

Исправления и доработки

  • Улучшено автосворачивание секций ВложенныеСценарии и ПараметрыСценария при открытии файла:
    • сворачивание больше не выполняется через временное перемещение курсора;
    • устранены визуальные “прыжки” выделения/позиции при открытии сценария.

2.0.0

Choose a tag to compare

@alexiosus alexiosus released this 18 Feb 20:13

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

Choose a tag to compare

@alexiosus alexiosus released this 27 Aug 17:12

🇷🇺 Русский:

  • Новые возможности:
    • Менеджер параметров Сборки Сценариев:
      • Новый интерфейс для управления параметрами 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.json parameters 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.
  • 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_PATH constant with the YamlSourceDirectory setting.
    • 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.

1.10.6

Choose a tag to compare

@alexiosus alexiosus released this 18 Aug 12:30

🇷🇺 Русский:

  • Исправлено запоминание значений параметров, когда значение - пустая строка.

🇺🇸 English:

  • Fixed saving parameter values when the value is an empty string.