2009-12-14 2 views
3

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

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

Unable to obtain goal [test:test] 

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

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

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

Thanks, Gearoid.

ответ

0

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

0

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

3

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

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

Зачем вам это нужно?

  • Юнят тесты полных быстрее, поэтому ваше время обратной связи месиво короче
  • второй сборка может запустить скрипт или муравей вместо мавенна, позволяя вам легче контролировать удаленный сервер
  • Тесты селена выиграли 't запускается mvn test на машине разработчика, что может вызвать конфликты.
  • Вы можете запустить два узла hudson в конфигурации «ферма», второй экземпляр может работать на том же сервере, что и селен. Для конкретных сборок можно настроить сродство к серверу.
Смежные вопросы