Как запустить сервер для Selenium grid Настройка Java Maven

Я устанавливаю фреймворк Selenium с Maven Java. Итак, все зависимости хранятся в POM.xml. Здесь у меня возникли сомнения. Как запустить сервер java -jar selenium-server-standalone-2.18.0.jar -role hub.. Должен ли я снова поместить эту банку в какую-то папку и должен ли я начать с этого пути? Или мне перейти в папку Maven Dependencies (.m2\Repositories)?

Может ли кто-нибудь предложить мне?

Если вопрос не ясен, отправьте ответный запрос. Я объясню по-другому.

Спасибо, Раджу.


person Raju    schedule 05.04.2013    source источник
comment
проверьте этот хорошо объясненный пост.   -  person Hemanth    schedule 05.04.2013
comment
Привет Хем, я думаю, вы пропустили, чтобы опубликовать ссылку. Можете ли вы отправить ссылку   -  person Raju    schedule 05.04.2013
comment
нажмите на слово это выше. это гиперссылка :)   -  person Hemanth    schedule 05.04.2013
comment
Привет, Хем, спасибо, я понял .. я пройду по этой ссылке   -  person Raju    schedule 05.04.2013
comment
Привет Хем, Да действительно хорошее объяснение. У вас есть какой-нибудь пример проекта фреймворка, который вы настроили? Это было бы еще большим подспорьем   -  person Raju    schedule 05.04.2013


Ответы (2)


Запуск Selenium Grid из Maven может быть плохой идеей; это зависит от того, что и как вы собираетесь делать.

Обычно вы запускаете тесты Selenium параллельно в нескольких/многих разных средах, и это требует значительных ресурсов. Когда вы запускаете процессы из Maven, они запускаются в его основном потоке (как дочерние потоки), поэтому их ресурсы ограничены конфигурацией Maven. Это зависит от ваших машин и конфигураций, но запуск сетки из Maven и параллельное выполнение нескольких тестов Selenium (концентратор и пара узлов по 5 экземпляров в каждом) на одной средней машине, скорее всего, заставят Maven зависнуть из-за отсутствия памяти. Чтобы этого избежать, можно подкорректировать конфигурацию, запускать тесты последовательно (не параллельно, только на одном узле) и т. д., но опять же: это зависит от того, что и как вы хотите делать и, возможно, стоит рассмотреть другие способы запуска вашего Селеновые тесты.

Тем не менее, если вы просто хотите попробовать, как работает Selenium Grid, или это всего лишь пара конкретных тестов, которые будут выполняться, вы можете использовать maven-antrun-plugin и запустить свой хаб и узлы следующим образом:

<plugin>
 <groupId>org.apache.maven.plugins</groupId>
 <artifactId>maven-antrun-plugin</artifactId>
 <version>1.7</version>
 <executions>
    <execution>
        <phase>pre-integration-test</phase> <!-- your Selenium tests should run in integration phase -->
        <configuration>
            <target>
                <java classname="org.openqa.grid.selenium.GridLauncher"
                      classpathref="maven.test.classpath"
                      failonerror="true"
                      fork="false">
                    <arg line="-role hub"/>
                </java>
                <java classname="org.openqa.grid.selenium.GridLauncher"
                      classpathref="maven.test.classpath"
                      failonerror="true"
                      fork="false">
                    <arg line="-role node
                               -browser 'browserName=firefox,version=19.0,maxInstances=3'
                               -browser 'browserName=internet explorer 64bits,version=9.0,maxInstances=2'
                               -hub http://localhost:4444/grid/register 
                               -port 5555 
                               -timeout 40000"/>
                </java>
                <java classname="org.openqa.grid.selenium.GridLauncher"
                      classpathref="maven.test.classpath"
                      failonerror="true"
                      fork="false">
                    <arg line="-role node
                               -browser 'browserName=chrome,version=24.0.1312.56,maxInstances=3'
                               -browser 'browserName=internet explorer 64bits,version=9.0,maxInstances=2'
                               -hub http://localhost:4444/grid/register 
                               -port 5556 
                               -timeout 40000"/>
                </java>
            </target>
        </configuration>
        <goals>
            <goal>run</goal>
        </goals>
    </execution>
</executions>
</plugin>

У вас должна быть эта зависимость в вашем pom.xml:

     <dependency>
        <groupId>org.seleniumhq.selenium.server</groupId>
        <artifactId>selenium-server-standalone</artifactId>
        <version>2.30.0</version>
        <scope>test</scope>
    </dependency>
person Sergio Pelin    schedule 08.04.2013
comment
Привет, спасибо за ваше предложение, я очень благодарен за ваше предложение. - person Raju; 09.04.2013
comment
Нет, этот я еще не пробовал. Но все же я нахожусь в процессе настройки гибридной фреймворка с Maven, Selenium grid, Testng. Думаете, это хорошее сочетание? Можете ли вы дать свое предложение? - person Raju; 10.04.2013
comment
Я никогда не работал с Гибридом, не знаю. Что касается Selenium Grid + TestNG, то это вполне правильный выбор, его используют многие разработчики. Я надеюсь, что мой ответ поможет вам. Если да, не забудьте проголосовать. Если какие-либо проблемы, не стесняйтесь сказать мне. - person Sergio Pelin; 10.04.2013

Как запустить проект Maven с тестовыми примерами для запуска в выделенной сетке селена с помощью команды CMD

person jitendra gupta    schedule 08.05.2020