Проблема с использованием "Открылось окно Х"

1c

#1

Добрый день.
Платформа 8.3.11.3041.
Проблема: Работа с конструкцией “Открылось окно Х”.
Иногда конструкция не отрабатывает, т.е. окно открылось, а ванесса его в упор не видит.
Если запускать тесты у себя локально на компьютере- она никогда не появляется.
Но для тестов у нас в компании выделен отдельный виртуальный сервер, там все тесты и проходят.
На скриншотах при падении теста видно, что ожидаемое окно (которое ищем через “Открылось окно”) открыто, оно активно, ничего подозрительного нет.
Пробовали ставить перед поиском окна паузу, не помогло.
Еще раз: ошибка плавающая, в одном и том же тесте в одном его запуске может пройти всё успешно, может всплыть эта ошибка на третьем открытии какого- либо окна, а может и на первом.
В чем может быть проблема?


#2

Вот тут была похожая проблема


#3

у нас и так не через RDP. Правда недавно сам сервер переехал, и после этого началась вышеописанная чертовщина.


#4

Я эту проблему тоже не решил по сути. Просто постоянно висит развернутое окно RDP внутри другого RDP, чтобы можно было его закрывать или сворачивать.
VNC вредные админы ставить не разрешили и не захотели. С безопасностью что-то.


#5

@Vladislav_Shevchenko Расскажите, как у вас организована инфраструктура тестирования?

Поясните

  • “отдельный виртуальный сервер”
  • и " недавно сам сервер переехал, и после этого началась вышеописанная чертовщина."

#6

Здравствуйте.

ВерсияVB: ver 5.6.0
ВерсияПлатформы: 8.3.12.1529

Есть виртуальная машина с 10-й виндой.

Поставил на неё дженкинс, описал шаг запуска тестов.
runner vanessa --settings “…\vrunner.json”
Запускается 1С в фоне - окон не создает, метод “тогда открылось окно” не отрабатывает.

Стал запускать службу дженкинсе не под системным пользователем, а под своим, под тем, под которым подключен через рдп. Всё равно 1С запускается в фоне и метод не отрабатывает. Окно РДП всё время открыто, дженкинс всё равно запускает 1С в фоне

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


#7

Поясни про запуска 1С в фоне. Какие симптомы?
Вообще хоть что-то в 1С отрабатывает, другой шаг?
Например, запуск тест-клиента?
Что происходит при запуске тобой вручную?
Дай больше информации


#8


(картинка)

Сценарий

Когда в командном интерфейсе я выбираю “Моя подсистема” “Общая форма”
Тогда открылось окно ‘Моя общая форма’
И я снимаю флаг “Флаг 1”
И я снимаю флаг ‘Флаг 2’
И я снимаю флаг “Флаг 3”
Если появилось окно с заголовком “1С:Предприятие” Тогда
И я нажимаю на кнопку “OK”
Тогда открылось окно ‘Моя общая форма*’
Тут падает с сообщением “Не удалось определить активное окно TestClient”
И я снимаю флаг “Флаг 4”
Если появилось окно с заголовком “1С:Предприятие” Тогда
Тогда открылось окно “1С:Предприятие”
И я нажимаю на кнопку “OK”
Тогда открылось окно ‘Моя общая форма*’
И я нажимаю на кнопку “Записать и закрыть”
и еще 700 шагов

При запуске вручную тесты отрабатывают полностью, при запуске бат-файла с командой “runner vanessa --settings “…\vrunner.json”” вручную окна 1С появляются и тесты отрабатывают полностью


#9

Симптомы запуска в фоне - нет окон 1С и в диспетчере задач процессы 1С в разделе “фоновые процессы”


#10

Возможно, проблема с неверными путями 1С, например. указана версия 1С. которой не существует на прогоняемой машине.

Вообще в ЖР тест.базы 1С есть записи о запуске 1С примерно в то время, когда запускали автоматически?

также рекомендую включить отладку логов пакетов 1скрипт через “set LOGOS_LEVEL=DEBUG” перед выполнением скрипта
и посмотреть полные логи, возможно, там увидите ошибку.


#11

А вы не пробовали сделать slave машину? Я так понял у вас дженкинс (master) как служба установлен и на нем же вы тесты интерактивные прогоняете?


#12

Спасибо за ответы

@artbear

На прогоняемой машине установлена одна версия 1с, она запускается и при интерактивном запуске и из дженкинса.
В журнале регистрации базы есть записи VanessaBehavior.ПередВыполнениемШага из сеанса, запущенного дженкинсом.
Полные логи попробую включить. Ошибка, с которой упал тест, видна в аллюр отчете - на одном из шагов, примерно на 10-м “Не получилось определить активное окно TestClient.”

@yadimetrio

Слейв машину сделать не пробовал - нет понимания как.
Кажется слейв-машина, VNC, автологин и сопутствующие приседания - слишком большая цена за то, чтобы по расписанию запускать 1С. Пока остановился на планировщике заданий, он открывает активное окно 1С и тесты проходят нормально.


#13

Добрый день.

При тестировании обнаружил, что в интерфейсе “Формы в закладках” и “Формы в отдельных окнах” возникает такая же ошибка:

Ожидали, что активным окном будет <Приходная накладная>, а нашли <Каркасная конфигурация>. Таймаут поиска окна: 10

При чем в интерфейсе такси все работает.
Для каждого интерфейса создавались свои фичи.
В чем может быть проблема?


#14

в этих интерфейсах штатное АПИ тестирование 1С 8.3 работает странно.
как раз на поиске окон.
на 8.3.10 и 8.3.11 точно были проблемы

1С активно поддерживает АПИ тестирования для интерфейса Такси.
для старых интерфейсов доработок почти нет :frowning:

@Damien163 какая у Вас версия 1С ?


#15

Проверял на 8.3.10.2561 и на 8.3.13.1513


#16

тогда учитывайте вот этот факт.