github Pr-Mex/vanessa-automation 1.2.043.45

4 hours ago

AI

  • Нужен MCP инструмент - список процессов ОС с данными по ним (PID, командная строка, дата старта) через внешнюю компоненту VanessaExt #2712
  • Нужен MCP инструмент activate_process_os - активизация окна процесса ОС по PID или по заголовку окна (аналог шагов <И я активизирую процесс "PID"> и <И я активизирую процесс по заголовку "Заголовок">) через внешнюю компоненту VanessaExt #2713
  • Нужен MCP инструмент manage_uiautomation - работа с технологией UI Automation в любых приложениях: поиск элементов, чтение свойств и навигация по дереву, клики, ввод текста, сочетания клавиш, колесо мыши, курсор, визуальные эффекты (затемнение, рамка, эллипс, стрелка, подсказка-балун) через внешнюю компоненту VanessaExt #2714
  • Нужен MCP инструмент speak_text - синтез речи и произнесение переданного текста пользователю настроенным движком TTS. #2721
  • Нужен MCP инструмент input_text_to_active_field - ввод текста в активное поле эмуляцией ввода с клавиатуры через внешнюю компоненту VanessaExt. #2722
  • Нужен MCP инструмент manage_clipboard - работа с системным буфером обмена через внешнюю компоненту VanessaExt: поместить текст в буфер (set_text), прочитать текст (get_text), очистить буфер (clear). #2723
  • MCP get_table_data: отбор filter работает по стандартным реквизитам (Наименование, Код, Проведен, Владелец и другие) #2725
  • MCP: новые инструменты чтения журнала регистрации #2726
  • MCP: новый инструмент find_form_elements - поиск элементов активного окна клиента тестирования платформенным методом НайтиОбъекты #2727
  • MCP: расширен инструмент manage_form_elements действиями над таблицами, табличными документами, календарём и формой (32 новых действия). #2728
  • MCP: новый инструмент manage_app - установка и очистка результата диалога выбора файла в клиенте тестирования #2729
  • Разные улучшения по работе MCP. Октябрь 2026. #2724

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

  • Настройка ОбъединятьПримерыСтруктурыСценарияВAllure (MergeScenarioOutlineExamplesInAllure): при включении все примеры одной структуры сценария выгружаются в отчет Allure как один тест-кейс — одинаковые fullName и testCaseId у всех примеров, значения параметров в parameters и name, уникальность прогонов в historyId. По умолчанию выключена, прежний формат выгрузки не меняется. По мотивам PR #2478 (issue #2477) #2715
  • Оптимизация. Скорость работы. Октябрь 2026. #2730

Новые шаги

  • Если появилось окно с заголовком из таблицы в течение 10 секунд Тогда #2638
  • И я копирую элемент объекта через команду формы "ПолноеИмяОбъекта" #2642
  • И я копирую группу объекта через команду формы "ПолноеИмяОбъекта" #2642

Пул реквесты

  • Вычитка описаний шагов: РаботаСИнтерфейсом, часть 1 #2687 Спасибо @lyaginww
  • Вычитка описаний шагов: РаботаСИнтерфейсом, часть 2 #2688 Спасибо @lyaginww
  • Вычитка описаний шагов: РаботаСИнтерфейсом, часть 3 #2689 Спасибо @lyaginww
  • Вычитка описаний шагов: РаботаСИнтерфейсом, часть 4 #2690 Спасибо @lyaginww
  • Вычитка описаний шагов: библиотека VAExtension #2691 Спасибо @lyaginww
  • Вычитка описаний шагов: библиотека Условие #2692 Спасибо @lyaginww
  • Вычитка описаний шагов: библиотеки UIAutomation и VanessaExtBrowser #2693 Спасибо @lyaginww
  • Вычитка описаний шагов: библиотеки ЗапускПриложений и ИнициаторДанных #2694 Спасибо @lyaginww
  • Вычитка описаний шагов: библиотеки Браузер и TestClients #2695 Спасибо @lyaginww
  • Вычитка описаний шагов: РаботаСФайлами, РаботаСИнтерфейсомДополнительный, SikuliX #2696 Спасибо @lyaginww
  • Вычитка описаний шагов: ИнтернетПочта, ВстроенныйЯзык, VanessaExt, ИнтерактивнаяСправка #2697 Спасибо @lyaginww
  • Вычитка описаний шагов: Цикл, РаботаСТаблицами, ГенераторДанных и мелкие модули #2698 Спасибо @lyaginww
  • Вычитка описаний шагов: семнадцать мелких модулей #2699 Спасибо @lyaginww
  • Кнопка выравнивания разметки таблиц Gherkin в редакторе #2686 Спасибо @lyaginww
  • Доработка формата выгрузки структуры сценария для Allure TestOps- #2478 Спасибо @LexxArh
  • Обновление редактора VAEditor, версия 1.3.7.19 #2718 Спасибо @OlegKopeykin @lintest

Разные доработки

  • Длительность шага видео без озвучки теперь рассчитывается по времени чтения текста титра. Добавлена настройка "ЗаписьВидеоСкоростьПроизношенияТекстаБезОзвучки" (по умолчанию 15 символов в секунду). #2700
  • Поиск окна по заголовку в шагах <И я активизирую процесс по заголовку> и <И я получаю данные процесса по заголовку окна> выполняется без учёта регистра #2716
  • В отчет jUnit добавлены метаданные прогона (версии VA и платформы, тип платформы, режим совместимости, имя раннера, данные клиента тестирования, имя фичи и путь к ней). Блок properties пишется первым элементом каждого testsuite, поэтому данные есть и у успешного прогона, а не только в тексте ошибки упавших сценариев. Пароли в строке соединения (Pwd= и /P) в отчете маскируются. #2636
  • Доработка помощница первого запуска. В вопросе помощника первого запуска о включении внешней компоненты VanessaExt добавлено объяснение, почему появился помощник. #2731
  • Доработка запуска браузера Chrome. #2732
  • Настройка "Каталог системных временных файлов" применяется к временным файлам клиентских системных команд на пути запуска и подключения клиента тестирования и в основных командах диагностики (скрипты и файлы их вывода): поиск PID и занятых портов, проверка процессов, данные о процессах и сетевых соединениях, логи сборки обработок и др. Файлы данных (скриншоты, отчёты, временные фичи) и файлы данных отдельных служебных операций (тихая установка VanessaExt, работа с базами) остаются в системном каталоге временных файлов. Если каталог недоступен, временные файлы создаются в системном каталоге временных файлов, как раньше; в режиме запрета синхронных вызовов каталог должен существовать заранее. #2500
  • Настройка ЗаписыватьСценарииВJunitЧерезTestSuite (WriteScriptsInjUnitViaTestSuite) выведена на форму в группу настроек jUnit: режим записи каждого сценария в свой testsuite теперь доступен из интерфейса. #2636
  • Доработана маскировка пароля в логе. #2733
  • Рефакторинг вспомогательных модулей после разделения основной формы #2735
  • Рефакторинг: устранены кольцевые вызовы «субмодуль → главная форма → тот же субмодуль» #2736
  • Редактор: сохранение вкладки и сохранение текста из VanessaEditor. Кодировка #2737
  • Отключение модулей при закрытии формы: в ОбщегоНазначенияVA исправлена очистка кешей (удалены операции над необъявленными переменными, добавлена очистка КешФункцииПеременныеСреды); в MCPVA_Служебный и ИнициаторДанных добавлена очистка объявленных кешей модуля. #2738
  • Статус шага во время выполнения: пока шаг выполняется, в записи шага хранится статус "Running" #2745

Исправление ошибок

  • MCP: в уведомлениях прогресса теперь передаётся токен прогресса клиента из _meta.progressToken, а не идентификатор запроса JSON-RPC. Если клиент токен не передал, уведомление не отправляется. Из-за неверного токена Cursor рвал MCP-сессию после вызова run_scenario или load_features #2711
  • MCP: при ошибках запуска сценариев (run_scenario, load_features) сбрасываются идентификатор задачи, токен прогресса и флаг оповещения MCP — после упавшего запуска при следующем выполнении сценариев не отправляются уведомления прогресса с устаревшим токеном #2711
  • Ложное срабатывание проверки синтаксиса «Используется ключевое слово Иначе, повторно в одном условии» на два независимых условия Если-Иначе в одном сценарии. #2664
  • В видеоинструкциях без озвучки: обрезались растянутые шаги, падала сборка субтитров из-за некорректного таймкода SRT, текст директивы [#[autodoc.text]] не попадал в субтитры и озвучку одиночных шагов. #2700
  • Исправления в кеше озвучки #2734
  • Форма «Настройки работы с браузером»: удалены лишние привязки событий формы к несуществующим обработчикам (ПередЗакрытием) и пустой обработчик ПриОткрытии. #2739
  • Встроенный редактор: исправлена опечатка в имени поля структуры данных об ошибке ("КраткйТекстОшибки" вместо "КраткийТекстОшибки"). Из-за неё MCP-инструмент get_editor_state при наличии ошибок в редакторе возвращал «ошибка чтения: Поле объекта не обнаружено (КраткийТекстОшибки)» вместо списка ошибок. #2740
  • Пустой журнал регистрации в отчёте Allure при запуске с параметрами /Len /Vlen (язык пользователя English или Vietnamese): макет выводился на языке, отличном от языка колонок журнала регистрации, и значения в строки не подставлялись. Язык макета теперь совпадает с языком колонок журнала регистрации. #2741
  • Генератор дымовых тестов, сценарий копирования: он больше не привязан к имени элемента формы «ФормаСкопировать» и не объявляет ошибкой отсутствие такого элемента. Генерируется один шаг поиска команды копирования — на открытой форме, затем в форме списка объекта, — и копирование считается успешным только если открылось новое окно. В русских ветках шаблонов «Запись» и «Проведение» имена команд берутся из варианта встроенного языка базы, а не из литералов. #2642
  • Шаг «И я жду, что таблица ... станет равна данной в течении ... секунд» падал ошибкой платформы и останавливал весь набор тестов, если у пользователя клиента тестирования не было прав на получение строк табличной части. Причина: признак наличия значения выставлялся по факту вызова, а не по факту получения значения. Теперь шаг падает как шаг и сообщает причину, оба обработчика ожидания по табличной части защищены от падения по внутренней ошибке: таймер снимается, шаг падает, набор продолжается, а ошибки прикрепления файлов диагностики пишутся в журнал регистрации. Дополнительно защищены функции подготовки различий макетов и дополнительных файлов сравнения с эталоном, чтобы такая же ошибка не возникала в других шагах. #2639
  • При ручном выполнении одного шага, сценария или фичи (контекстное меню дерева тестов, кнопки редактора) в ситуации, когда из-за отбора по тэгам в дереве нет исполняемых строк, выводится сообщение с причиной и перечнем тэгов отбора, а без отбора — сообщение, что не выбран исполняемый шаг или сценарий. Раньше выполнение молча не начиналось. #2655
  • Парсер Gherkin из внешней компоненты VanessaExt: при загрузке одного фича файла с отбором по тэгам отброшенные сценарии теперь сообщаются пользователю строкой «Сценарий <имя> не загружен.», как это делает старый парсер. При загрузке каталога фильтр выполняет сама компонента, поэтому сообщения для этого случая не выводятся. #2655
  • MCP: при отказе запуска шага или сценария (в дереве тестов нет исполняемой строки) вызов инструмента завершается ошибкой, сбрасываются идентификатор задачи и оба флага оповещения — иначе следующее выполнение сценариев могло отправить уведомление с устаревшим токеном. #2742
  • Устойчивость выполнения сценариев #2743
  • MCP: завершение выполнения сценариев больше не падает с «Значение не является значением объектного типа (СтрокаРеальнойПроцедуры)» #2744
  • MCP: в состоянии текущего шага (get_vanessa_automation_state) не заполнялся номер строки фичи — читался ключ "НомерСтрокиВФиче" вместо "НомерСтрокиФичи"; добавлен ИД строки текущего шага. #2746
  • Шаг «И я помечаю на удаление документы "ВидДокумента" содержащих комментарий "ТекстКомментария" (Расширение)» падал с модальным окном «Значение содержит данные недопустимых типов», когда по комментарию находились документы: результат запроса (таблица значений) целиком передавался в ЗаписатьJSON, который этот тип не поддерживает (дефект не связан с версией платформы). Список найденных документов теперь сериализуется как массив строк, а серверные ошибки обработчика возвращаются шагу текстом, а не модальным окном платформы. VAExtension 1.41 #2717
  • Запись действий пользователя: заголовок окна с признаком изменения формы больше не записывается с пробелом перед звёздочкой — во всех шагах записи («открылось окно», «я жду закрытия окна», «я закрываю окно») он приводится к виду "Заголовок (создание)*". Маска без пробела подходит и для формы с изменениями, и для формы без них, поэтому сгенерированный сценарий проходит проверку синтаксиса без предупреждений. Поведение регулируется новой настройкой «Убирать пробел перед звёздочкой в заголовке окна» (по умолчанию включена); при записи через MCP пробел убирается всегда. Версия MCP 1.27 #2719
  • Снятие скриншотов: функция определения неподходящего окна требует структуру данных окна и при неверном аргументе выдаёт понятную ошибку с именем переданного типа — вместо платформенного «Значение не является значением объектного типа (Class)». #2720
  • При включённой настройке «Запрещать перезаписывать переменные» служебные переменные контекста (ТекущаяТЧ, ТекущийВыпадающийСписок и остальные из списка служебных) больше не подпадают под запрет перезаписи: табличные шаги (например, «в таблице … я нажимаю на кнопку с именем») больше не падают с ошибкой «Переменная <ТекущаяТЧ> уже объявлена» и не маскируют реальную причину; защита пользовательских переменных сохранена полностью. #2720
  • Шаг «Тогда таблица "ИмяТаблицы" не содержит строки по шаблону» падал с ошибкой «Получение элемента по индексу для значения не определено», если таблица формы пустая, а в заголовке колонки Gherkin-таблицы указан символ *: замена маски колонки выполнялась по данным активной строки, которых у пустой таблицы нет. Теперь при отсутствии выделенных строк замена колонок не выполняется. #2590
  • Страница приветствия. Ошибка #2747
  • Параметр СписокСценариевДляВыполнения не работает, если используется внешняя компонента VanessaExt #2512
  • MCP: функции выбора точного значения из выпадающего списка, нажатия кнопки выбора у поля и у реквизита таблицы, перехода к строке таблицы теперь учитывают переданное «КоличествоПопыток» — раньше параметр игнорировался, и MCP-вызовы вместо одной попытки выполняли несколько с паузами. В изменённых функциях значение «КоличествоПопыток» из ДопПараметры принимается, только если это положительное число: ноль или нечисло больше не оставляет цикл попыток без выполнения. #2641

Don't miss a new vanessa-automation release

NewReleases is sending notifications on new releases.