Ошибки в тестах при запуске через Jenkins, но если запускать по отдельности, то все проходит

Добрый день.

Достался тест-сьюит. При запуске тестов по отдельности проходит каждый. При запуске через Jenkins некоторые тесты вылетают. Причем некоторые из падающих проходят, некоторые - нет.

Кто-то сталкивался с таким?

Пока вижу выход пробовать рефакторить код.

Перед тем как рефакторить, можно в логи посмотреть, что пишет. Вдруг там разгадка )

ну нужно разбираться, почему одинаковые тесты на разных машинах падают. Версии браузеров одинаковые например? :slight_smile:

Есть ли какая-то закономерность в падениях?
В чём отличие конфигурации при запуске через Jenkins от оной при запуске руками?

Сталкивался - исправил, конкретно в моем случае (не факт что у тебя так!!!) Дженкинс не запускал визуальную форму то есть не создавал видимого браузера, соответственно некоторые ожидания и клики не всегда срабатывали. решается запуском дженкинса не службой а java -jar jenkins.war (через консоль в папке дженкинса)
Чтобы проверить не эта ли у тебя проблема -проверь создается ли браузер при выполнении тестов

Логи бы глянуть, хоть одним глазком, при прохождении тестов :slight_smile:

Возможно, неправильно понял, но:

  • по отдельности
  • в Jenkins
    А почему просто не поотлаживать в IDE не по отдельности, а всю последовательность? Если, конечно, падения начинаются быстро.

да. Запускаю на локальной машине.

В том-то и дело, что нет. Написан на testNG + Maven. Иногда element not found, иногда element not available for click on point. Это иногда. А иногда все ок.
Сегодня составил статистику падения некоторых тестов. Получил результаты от 8,33% до 50%.

так и запустил :slight_smile:

сейчас нет под рукой. А вообще ошибки типа element not found или element not available for click on point. Это на Java

прогонял раз 10. Все 10 пройдено успешно. Почему именно при запуске Jenkins? Возможно, нужно где-то поставить больше таймауты? Так и так стоит 10 с, что не мало для проекта. Иначе бы при ручной прогонке тоже бы падали. А так - STABLE.

может быть элементы при отрисовке перекрывают друг друга?

По идее, у вас тесты падают в разных местах, но все равно кол-во мест должно быть по идее не такое большое.
Попробуйте распахнуть окна браузера на весь экран:

getDriver().manage().window().maximize();
  1. Если просто визуально за тестом наблюдать все также происходит? нет каких то подвисаний и задержек?
  2. Дженкинс на этой же машине что и сам гоняешь?
  1. Вроде нет. Это возникает по Chrome, 3 раза прогнал на ФФ - все ок.
  2. Да.

Пока что изменил код на new Actions(driver).moveToElement(SaveBtn).click().perform();

Ну, про Хром есть ряд проблем которые и сами создатели вебдрайвера не скрывают. Насколько я помню из статьи о поддержке других браузеров - у Хрома проблема с кликом а у ИЕ проблема с локаторами не ЦСС.

Показывай тест?