t.me/atinfo_chat Telegram группа по автоматизации тестирования

Локально тесты прогоняются без ошибок, а когда запускаю в Jenkins все падают

gradle
jenkins
execution
junit
java
selenium
webdriver
Теги: #<Tag:0x00007f21d69e3870> #<Tag:0x00007f21d69e3730> #<Tag:0x00007f21d69e35f0> #<Tag:0x00007f21d69e34b0> #<Tag:0x00007f21d69e3370> #<Tag:0x00007f21d69e31e0> #<Tag:0x00007f21d69e30a0>

(Alex Somov) #1

Java + Selenium + Junit + Gradle
Когда запускаю джобу в Jenkins, все тесты падают с такой ошибкой:

com.bo.Landing > aboutUsOpened FAILED org.openqa.selenium.WebDriverException Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException Caused by: java.util.concurrent.TimeoutException java.lang.NullPointerException

На всех тестах такая ошибка.
Когда прогоняю тесты локально, все работает и ни один тест не падает.

Также все тесты в headless режиме для chrome.

Chrome version: Version 72.0.3626.121 (Official Build) (64-bit)
Selenium version: 3.141.59
Chromedriver version: 2.46.628411

Пробовал увеличить время для:
driver.manage().timeouts().pageLoadTimeout(x, TimeUnit.SECONDS); driver.manage().timeouts().implicitlyWait(x, TimeUnit.SECONDS);
Не помогло

Также добавил:
options.addArguments("--no-sandbox"); в setUp методе, тоже не помогло.

Подскажите пожалуйста в чем может быть проблема? :pensive:


(Ihor Kokhan) #2

Похоже на ошибку несовместимости. Chromedriver и Сhrome одинаковой версии и локально и на удаленке?


(Alex Somov) #3

А подскажите пожалуйста где глянуть версию chromedriver и chrome на удаленке? Просто локально то у меня chrome стоит и его версию я знаю и chromedriver в репозитории лежит который совместим с ним, а вот на удаленке не знаю где глянуть… Поидее тесты бы вообще не запустились если бы что то не так было? И кадало бы exception который непосредственно относиться к проблеме коннекшена и т.д.?


(Ihor Kokhan) #4

Если есть коннекшн к машине, на которую нацелен Jenkins - то просто запустить на ней хром и посмотреть. А путь к хромдрайверу должен быть прописан в батничке на той-же машине.
Смотря как вы запскаете тесты. Можно явно прописать путь к нему.

System.setProperty("webdriver.chrome.driver", "C:\\Users\\user1\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe");