Selenium Grid
#1
Отправлено 26 февраля 2013 - 12:53
Есть тест, который я запускаю через JUnit либо через TestNG. С помощью TestNG настроила запуск параллельных сценариев. Но ничего не понимаю с хабами и нодами. Запускаю хаб java -jar selenium-server-standalone-2.30.0.jar -role hub, далее java -jar selenium-server-standalone-2.21.0.jar -role node -hub http://localhost:4444/grid/register. Получаю в http://localhost:4444/grid/register HTTP 500. И что дальше? Не представляю. Объясните, кому не жалко. Заранее спасибо.
#2
Отправлено 27 февраля 2013 - 09:18
Уважаемые, кто-нибудь может адекватно описать, как использовать Grid для множественного запуска тестовых сценариев?
Есть тест, который я запускаю через JUnit либо через TestNG. С помощью TestNG настроила запуск параллельных сценариев. Но ничего не понимаю с хабами и нодами. Запускаю хаб java -jar selenium-server-standalone-2.30.0.jar -role hub, далее java -jar selenium-server-standalone-2.21.0.jar -role node -hub http://localhost:4444/grid/register. Получаю в http://localhost:4444/grid/register HTTP 500. И что дальше? Не представляю. Объясните, кому не жалко. Заранее спасибо.
Ну, во-первых версии сервера в hub и node надо наверное все же одинаковые использовать (речь про standalone-2.30.0.jar).
Во-вторых запускаете все на одной машине? если нет, то в node-е надо указать ip или dns хоста с hub-ом.
В-третьих в своих тестах просто нужно запускать драйвер по принципу new RemoteWebDriver(hubUrl, DesiredCapabilities.chrome()) (естстественно url и capabilitites подставляйте какие вам надо).
#3
Отправлено 27 февраля 2013 - 10:34
1. Версии сервера одинаковые использую, в предыдущем посте просто опечатка.
Уважаемые, кто-нибудь может адекватно описать, как использовать Grid для множественного запуска тестовых сценариев?
Есть тест, который я запускаю через JUnit либо через TestNG. С помощью TestNG настроила запуск параллельных сценариев. Но ничего не понимаю с хабами и нодами. Запускаю хаб java -jar selenium-server-standalone-2.30.0.jar -role hub, далее java -jar selenium-server-standalone-2.21.0.jar -role node -hub http://localhost:4444/grid/register. Получаю в http://localhost:4444/grid/register HTTP 500. И что дальше? Не представляю. Объясните, кому не жалко. Заранее спасибо.
Ну, во-первых версии сервера в hub и node надо наверное все же одинаковые использовать (речь про standalone-2.30.0.jar).
Во-вторых запускаете все на одной машине? если нет, то в node-е надо указать ip или dns хоста с hub-ом.
В-третьих в своих тестах просто нужно запускать драйвер по принципу new RemoteWebDriver(hubUrl, DesiredCapabilities.chrome()) (естстественно url и capabilitites подставляйте какие вам надо).
2. Пока запускаю на одной машине, т.к. смысл запускать где-то еще, даже с одной машиной не разобралась.
3. Remote драйвер запускаю с capabilities - браузер firefox.
Когда запускаю ноды, они не запускаются: ошибка 500. Естественно, не вижу никаких действий теста. И что с этим делать - вообще не знаю. В этом как раз затык. Нуждаюсь в помощи в этом моменте.
#4
Отправлено 04 марта 2013 - 07:51
Добилась распараллеливания тестов на одной машине (моей) следующим образом:
1. Запускаю хаб java -jar selenium-server-standalone-2.30.0.jar -role hub.
2. Запускаю ноды (например, мне требуется 3 узла для 3 тестов, которые я хочу, чтобы выполнялись одновременно, т.е. параллельно):
java -jar selenium-server-standalone-2.30.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=firefox,version=19.0,platform=WINDOWS
java -jar selenium-server-standalone-2.30.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=firefox,version=19.0,platform=WINDOWS -port 5556
java -jar selenium-server-standalone-2.30.0.jar -role node -hub http://localhost:4444/grid/register -browser browserName=firefox,version=19.0,platform=WINDOWS -port 5557
3. Иду в своей проект, где у меня драйвером является RemoteWebDriver. Запускаю этот проект через TestNG. Моя xml имеет приблизительно такой вид:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/te...estng-1.0.dtd">
<suite name="Suite" parallel="tests" thread-count="3">
<test name="TestOne">
<classes>
<class name="testClass1"/>
</classes>
</test> <!-- Test -->
<test name="TestTwo">
<classes>
<class name="testClass2"/>
</classes>
</test> <!-- Test -->
<test name="TestThree">
<classes>
<class name="testClass3"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
Возможно, немного неправославно. Кто знает как оптимизировать - буду благодарна за совет.
#5
Отправлено 21 марта 2013 - 15:02
<class name="testClass2"/>
</classes>
может содержаться только один класс, как напримере testClass2, или несколько?
т.е например:
<classes>
<class name="testClass2"/>
<class name="testClass3"/>
<class name="testClass4"/>
<class name="testClass5"/>
</classes>
Так возможно?
#6
Отправлено 27 марта 2013 - 06:08
Да, классы - это что-то типа тест-кейсов, вы можете составить тест из нескольких разных классов, которые сами напишите.В <classes>
<class name="testClass2"/>
</classes>
может содержаться только один класс, как напримере testClass2, или несколько?
т.е например:
<classes>
<class name="testClass2"/>
<class name="testClass3"/>
<class name="testClass4"/>
<class name="testClass5"/>
</classes>
Так возможно?
#7
Отправлено 16 апреля 2013 - 12:50
Настроили грид с хабом на сервере Дженкинса.
Тесты нормально запускаются на удалённых машинах.
Только вот проблема такая:
Безымянный.PNG 38,33К 28 Количество загрузок:
Ибо странно, в репозитории мавена удалены все версии селениум сервера кроме последней (2.32), а он пишет что 2.25?
Что это и откуда взялось?
#8
Отправлено 17 апреля 2013 - 14:17
Оказывается, вместе с плагином скачался старый сервер.
Находится он тут /local/jenkins/plugins/selenium/WEB-INF/lib/
Удалили, положили туда свежий, перегрузили.
Всё заработало.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных