如何为Selenium grid Java Maven安装启动服务器

如何为Selenium grid Java Maven安装启动服务器,selenium,selenium-webdriver,selenium-rc,selenium-grid,Selenium,Selenium Webdriver,Selenium Rc,Selenium Grid,我使用Maven Java设置Selenium框架。因此,所有依赖项都存储在POM.xml中 我有点怀疑。。如何启动服务器java-jar selenium-server-standalone-2.18.0.jar-role hub。。我是否应该再次将这个罐子放在某个文件夹中,并从该路径开始?还是转到Maven Dependencies文件夹(.m2\Repositories) 有人能推荐我吗 如果问题不清楚,请回复。我将以不同的方式解释 谢谢 Raju从Maven运行Selenium网格可能不

我使用Maven Java设置Selenium框架。因此,所有依赖项都存储在POM.xml中 我有点怀疑。。如何启动服务器java-jar selenium-server-standalone-2.18.0.jar-role hub。。我是否应该再次将这个罐子放在某个文件夹中,并从该路径开始?还是转到Maven Dependencies文件夹(.m2\Repositories)

有人能推荐我吗

如果问题不清楚,请回复。我将以不同的方式解释

谢谢
Raju从Maven运行Selenium网格可能不是一个好主意;这取决于你要做什么和如何做

通常,您将针对多个/多个不同的环境并行运行Selenium测试,这会带来相当大的资源成本。当您从Maven启动进程时,它们在其主线程内运行(作为子线程),因此它们的资源仅限于Maven的配置。这取决于您的机器和配置,但从Maven启动网格并在一台普通机器上并行运行几个Selenium测试(hub和两个节点,每个节点有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>

org.apache.maven.plugins
maven antrun插件
1.7
预集成测试
跑
您的pom.xml中应该有此依赖项:

     <dependency>
        <groupId>org.seleniumhq.selenium.server</groupId>
        <artifactId>selenium-server-standalone</artifactId>
        <version>2.30.0</version>
        <scope>test</scope>
    </dependency>

org.seleniumhq.selenium.server
selenium服务器单机版
2.30.0
测试

如何运行Maven项目,通过CMD命令在专用的selenium网格上运行测试用例。请发送链接,点击上面的“这个”字。这是一个超链接:)嗨,谢谢,我收到了。。我会仔细检查林奇下摆,是的,真的很好的解释。您是否有任何已设置的示例框架项目?这将是另一个伟大的帮助你好,谢谢你的建议,我真的非常感谢你的建议。不,我还没有尝试过这个。但我仍在使用Maven、Selenium grid和Testng建立一个混合框架。你认为这是一个很好的组合吗?你能给出你的建议吗?我不知道,我从来没有和Hybrid一起工作过。对于SeleniumGrid+TestNG,这是一个完全有效的选择,许多开发人员都使用它。我希望我的回答能帮助你。如果是,记得投票表决。如果有什么问题,请告诉我。