Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

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

internet-explorer
selenium
testing
web
jenkins
webdriver
java
Теги: #<Tag:0x00007f7b6d191c08> #<Tag:0x00007f7b6d191aa0> #<Tag:0x00007f7b6d191960> #<Tag:0x00007f7b6d1917a8> #<Tag:0x00007f7b6d191398> #<Tag:0x00007f7b6d190ec0> #<Tag:0x00007f7b6d190ab0>

(Darya) #1

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


(Vladislav Kulasov) #2

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


(Darya) #3

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


(Yury) #4

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

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

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

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


(Darya) #5

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


(Yury) #6

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


(Darya) #7

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


(Yury) #8

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


Запуск тестов в InternetExplorer headless mode (selenium webdriver+ pytest)