Кто сумел заставить Jenkins работать с Internet Explorer в фоновом режиме?

Привет всем! Получили задачу тестирповать веб-ресурс на Internet Explorer/Jenkins, но как бы не извращались - IE не работает в фоновом режиме, драйвер не находит локаторы(с Chrome такой проблемы нет). При выполнении тестов в “видимом режиме” нельзя свернуть окно подключения rdp, нельзя сделать disconnect(windows server 2012). Вопрос: кому нибудь настроить работу Internet Explorer+Jenkins? Подскажите или натолкните на мысль, пожалуйста! Буду невероятно благодарня:)

Eсли вы работаете через RDP то вам нужно сказать RDP как бы не засыпать. Там в реестре есть параметр

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Terminal Server Client]
"RemoteDesktop_SuppressWhenMinimized"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Terminal Server Client]
"RemoteDesktop_SuppressWhenMinimized"=dword:00000002

ну и настроить чтоб не было окна блокировки. А подключение делаете через командную строку и держите его
cmdkey /add:“TERMSRV/qa-4” /user:“domain\administrator” /pass:****
start mstsc.exe file.rdp /v:qa-4 /h:1024 /w:1280 /admin
exit 0

Работает! Спасибо.
А в данной ситуации? Дженкинс настроен на сервере, тесты запускаются на slave machine. Если юзер, в учетной записи которого запущена slave machine, disconnected, то IE будто бы теряет фокус. То есть если во время выполнения тестов сделать disconnect - тесты дружно упадут. Получается что я должна быть всегда подключена к серверу чтобы тесты проходили нормально?

Попробуйте дисконнектиться через tscon.

Сделайте батничек с таким содержимым:

for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (
  %windir%\System32\tscon.exe %%s /dest:console
)

Запускайте его на удаленной машине (с правами администратора), когда хотите выйти из сессии. Тогда удаленная машина не будет блокироваться, а графический интерфейс будет “замкнут” на консоль.

1 лайк

Спасибо! Роботает, IE доволен:)

Да, только учтите, что удаленная машина в таком режиме остается незаблокированной! Это вопрос безопасности.
Если у вас изолированная среда, то это не важно. В другом случае блокируйте ее после прогона тестов.

Извините за глупый вопрос. В свое оправдание скажу что не так долго работаю в этой сфере:flushed: Но как определить изолирована среда или нет?

Изолирована - значит доступ к машинам есть только внутри определенной сети, например, в рамках одного домена или VPN.