Запуск тестов Selenium через JUnit в Hudson

извиняюсь за несколько сбивающий с толку заголовок :-) По сути, я настроил свои тесты Selenium для работы через JUnit, когда я создаю проект через maven. Если я запускаю свой Selenium Server в командной строке, а затем запускаю цель сборки maven в другом приглашении cmd, тесты выполняются, как ожидалось.

Я подумал, что этот процесс будет легко реализовать в Гудзоне, но он оказался довольно проблематичным. Я могу запустить свой селен-сервер, как и раньше, а затем настроить сборку для запуска с помощью задания Hudson. Однако похоже, что hudson не берет селен-сервер - я получаю сообщение об ошибке, в котором говорится следующее:

Unable to obtain goal [test:test]

Причина, по которой я думаю, что hudson не связывается с сервером selenium, заключается в том, что, когда я запускаю тесты junit через мою собственную командную строку с остановленным сервером, я получаю то же сообщение об ошибке.

Также важно отметить, что я использовал плагин seleniumHQ для hudson для запуска моих тестов с использованием файлов html, но хочу перейти на JUnit как более гибкий.

Любая помощь по этому поводу очень ценится!

Спасибо, Героид.


person Gerard    schedule 14.12.2009    source источник


Ответы (3)


Я рекомендую вам запускать тесты на селен отдельно от цели test: test.

Вы можете создать две сборки Hudson для своего проекта, причем вторая сборка запускается при успешном завершении первой сборки.

Зачем тебе это делать?

  • Модульные тесты выполняются быстрее, поэтому время обратной связи намного короче
  • вторая сборка может запускать сценарий оболочки или муравья вместо maven, что упрощает управление удаленным сервером
  • mvn test на машине разработчика не запускает тесты на селен, что может вызвать конфликты.
  • Вы можете запустить два узла Hudson в конфигурации «ферма», второй экземпляр может работать на том же сервере, что и селен. Привязку к серверу можно настроить для конкретных сборок.
person Kevin Wright    schedule 09.01.2010

Есть ли файл конфигурации с URL-адресом сервера, который не запускается внутри Hudson? Можете ли вы распечатать URL-адрес сервера, чтобы убедиться, что он указывает в нужном месте?

person MattGrommes    schedule 14.12.2009

Вы можете использовать selenium-maven-plugin для автоматического запуска и остановки сервера селена. как часть процесса сборки maven.

person artbristol    schedule 08.01.2010