У нас есть автоматизированная проверка работоспособности, при которой все наши приложения входят в систему, все через Selenium и только в Internet Explorer.
Код работает хорошо, когда он был выполнен непосредственно из пакетного файла.Однако, когда Jenkins вызывает этот пакетный файл (.bat), он не выполняет его полностью.
Кстати, платформа - Windows Server 2008 R2 Standard
Это .batкод файла
@echo off
set path="";
set path="E:\XXXX\jre1.8.0_141\bin";
pushd E:\Jenkins_Softwares\SeleniumCode\HealthCheck_jar
SET JAVA_OPTS=-Xmx4g -Xms512m -XX:MaxPermSize=256m -XX:ReservedCodeCacheSize=128m -XX:MaxHeapSize=512m
java -jar HealthCheck_JenkinsNG.jar
Я добавил эти дополнительные параметры IE в код JAVA перед запуском драйвера IE.
InternetExplorerOptions options = new InternetExplorerOptions();
options.introduceFlakinessByIgnoringSecurityDomains();
options.enableNativeEvents();
options.destructivelyEnsureCleanSession();
Когда Jenkins выполняет пакетный файл, браузер IE открывается встраница входа.Есть что-то странное, когда эта страница отображается - выравнивание всей страницы нарушается, и все элементы выравниваются по левому краю. (Я хотел бы подчеркнуть, что когда вместо этого пакетный файл выполняется напрямую, такое выравнивание страницы не нарушается. Элементы сохраняют свое первоначальное центральное положение. По какой-то причине Дженкинс устанавливает все это влево). Для меня выравнивание не совсем нарушает условия сделки.
Однако, когда имя пользователя и пароль вводятся с помощью кода Selenium, оно вводится в идеальные текстовые поля;но когда нажата кнопка «Отправить», содержимое этих текстовых полей становится пустым, и я не могу войти. (Когда этот же кусок кода выполняется через непосредственный запуск командного файла, я могу войти в систему и отображается домашняя страница моего приложения)
Я сомневаюсь, что что-то не так сJava-код селена.Поскольку он выполняется правильно, при запуске из файла .bat или даже из командной строки или даже как приложение Java из IDE.По какой-то причине, когда это выполняется из Jenkins, оно не работает.
Есть ли какие-либо параметры или настройки, которые необходимо установить, когда Jenkins работает с Selenium в IE 11?Поскольку я так много пытался настроить код селена, все они дают один и тот же результат - элементы на странице входа в систему очищаются после нажатия кнопки отправки.
Кроме того, просто чтобы упомянуть, все этоработать только на одном мастер-узле Jenkins.Нет подчиненных узлов.