Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Некорректная работа фреймворка в разных режимах парсера (VanessaExt и обычном). #1685

Closed
Lelushka opened this issue Jul 15, 2022 · 1 comment
Labels
bug Something isn't working

Comments

@Lelushka
Copy link

Укажите:

  1. Версия Vanessa Automation 1.2.039.1
  2. Версия платформы 8.3.20.1710
  3. Режим совместимости базы, где запускается Vanessa Automation Версия 8.3.14
  4. Операционная система Windows server 2019 standard

Проблематика :
При включенном парсере VanessaExt, двойные заголовки не считаются ошибкой, что в последствии приводит некорректной работе фреймворка. Подробности опишу ниже.
Пример фичи:

#language: ru

@tree

Функционал: <16. Справочник «Регионы»>

Как <Роль> я хочу
<описание функционала> 
чтобы <бизнес-эффект> 
Переменные:
	Справочник = 'Регионы'
	Имя = 'TestТест^1'
	Страна1 = 'СИНГАПУР'
Контекст:
	И я запоминаю содержимое файла "Password.txt" в переменную "Password"
	И я закрываю все окна клиентского приложения
Сценарий: <16. Справочник «Регионы»>
1.1 Пользователь Администратор создает новый элемент справочника, нажатием кнопки «Создать» на командной панели формы.
	И я подключаю TestClient "Администратор" логин "Администратор MDM" пароль "$Password$"
	И В командном интерфейсе я выбираю 'Контрагенты' 'Справочник'
	Тогда открылось окно 'Справочник'
	И я нажимаю на кнопку с именем 'ФормаСоздать'
1.2	Нажимает кнопку «Записать», проверяет список полей, обязательных для заполнения.
	Когда открылось окно '$Справочник$ (создание)'
	И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
	Тогда в логе сообщений TestClient есть строки:
		| 'Поле "Наименование" не заполнено' |
1.3	Заполняет необходимые поля и записывает элемент.
*Проверка на запрет создания для страны Росссия
	Когда открылось окно '$Справочник$ (создание)'
	Если элемент "Наименование" не доступен для редактирования Тогда
		Тогда я вызываю исключение "Редактирование данного поля должно быть доступно"	
	И поле с именем "КодСубъектаРФ" отсутствует на форме
	И поле с именем "ФедеральныйОкруг" отсутствует на форме
	И из выпадающего списка с именем "Страна" я выбираю по строке 'Россия'
	Если элемент "Наименование" доступен для редактирования Тогда
		Тогда я вызываю исключение "Редактирование данного поля должно быть недоступно"	
	И поле с именем "КодСубъектаРФ" присутствует на форме
	Если элемент "КодСубъектаРФ" доступен для редактирования Тогда
		Тогда я вызываю исключение "Редактирование данного поля должно быть недоступно"
	И поле с именем "ФедеральныйОкруг" присутствует на форме	
	Если элемент "ФедеральныйОкруг" доступен для редактирования Тогда
		Тогда я вызываю исключение "Редактирование данного поля должно быть недоступно"
	И я очищаю окно сообщений пользователю
	И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
	Тогда в логе сообщений TestClient есть строки:
		| 'Поле "Наименование" не заполнено' |
*Проверка поведения при выборе иностранной страны	
	И я нажимаю кнопку выбора у поля с именем "Страна"
	Тогда открылось окно 'Страны мира'
	И в таблице "Список" я перехожу к строке:
		| 'Наименование' |
		| 'Страна1'      |
	И в таблице "Список" я выбираю текущую строку
	И поле с именем "КодСубъектаРФ" отсутствует на форме
	И поле с именем "ФедеральныйОкруг" отсутствует на форме
	И в поле с именем 'Наименование' я ввожу текст 'Имя'
	И я нажимаю на кнопку с именем 'ФормаЗаписать'
	И я жду доступности элемента с именем 'Код' в течение 20 секунд
	И я запоминаю значение поля с именем "Код" как "КодРег"
	И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
// Проверка на уже существующую карточку иностранной страны
	Если в логе сообщений TestClient есть строки: тогда
		| 'Элемент со страной $Страна1$ - уже существует!' |
		Затем я останавливаю выполнение сценариев данной фичи.
		И я закрываю все окна клиентского приложения
	И я жду закрытия окна '$Имя$ ($Справочник$)' в течение 20 секунд
1.4 Проверяет создание новой записи в справочнике.
	Когда открылось окно 'Справочник'
	И таблица "Список" содержит строки
		| 'Код'      | 'Наименование' | 'Страна'  |
		| '$КодРег$' | 'Имя'          | 'Страна1' |
1.5 Попытка создания дубля карточки иностранной страны
	И я нажимаю на кнопку с именем 'ФормаСоздать'
	И я нажимаю кнопку выбора у поля с именем "Страна"
	Тогда открылось окно 'Страны мира'
	И в таблице "Список" я перехожу к строке:
		| 'Наименование' |
		| 'Страна1'      |
	И в таблице "Список" я выбираю текущую строку
	И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
	И в логе сообщений TestClient есть строки:
		| 'Элемент со страной $Страна1$ - уже существует!' |
Закрытие
	И я закрываю все окна клиентского приложения

Проблемное место (двойной заголовок) :

1.3	Заполняет необходимые поля и записывает элемент.
*Проверка на запрет создания для страны Росссия
  1. Без включения парсера VanessaExt, при загрузке теста, Ванесса выдаст ошибку в проблемном месте и не даст запустить тест. С включенным парсером ошибки нет и тест выполниться. Т.е. наблюдаем разное поведение.

  2. Если исполнить тест, запустив ванессу через SLI (CMD) без включения парсера VanessaExt в json ("ИспользоватьПарсерGherkinИзКомпонентыVanessaExt": false) , дойдя до построения дерева - менеджер клиент закрывается (схлопнется).

p.s
Проверял на Ванессах с 38.1 по 39.1
Если убрать проблемную строку из фичи - проблема уходит.
Если в json выставить "ИспользоватьПарсерGherkinИзКомпонентыVanessaExt": true - проблема уходит.
В интерактивном режиме проблема не наблюдается , только при запуске через SLI.
При этом в Json с заданными параметрами: "ВыгружатьСтатусВыполненияСценариевВФайл": "Истина", "ПутьКФайлуДляВыгрузкиСтатусаВыполненияСценариев": "<ПутьКФайлу>", - статус не сохраняется.
Прикладываю лог журнала при схлопывании из конфигуратора и клиента, файл Json.

Прикладывайте файлы скриншотов
image
image
VAParamsMDM2.zip

@Pr-Mex
Copy link
Owner

Pr-Mex commented Dec 17, 2022

Решено

@Pr-Mex Pr-Mex closed this as completed Dec 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants