如何在两个不同的节点中运行selenium测试用例?

Gan*_*hja 3 selenium-grid selenium-webdriver

实际上我需要使用FIREFOX浏览器(selenium网格)在两个不同的节点中运行我的单个selenium测试用例,我已经使用下面的命令启动了我的集线器

java -jar selenium-server-standalone-2.32.0.jar -role hub 
Run Code Online (Sandbox Code Playgroud)

用两个不同的端口nos启动了两个节点:

节点:1

java -jar selenium-server-standalone-2.32.0.jar -role webdriver -hub http://localhost:4444/grid/register -port 7575 -browser browserName=firefox,version=18,platform=WINDOWS
Run Code Online (Sandbox Code Playgroud)

节点:2

java -jar selenium-server-standalone-2.32.0.jar -role webdriver -hub http://localhost:4444/grid/register -port 8585 -browser browserName=firefox,version=18,platform=WINDOWS
Run Code Online (Sandbox Code Playgroud)

但是,当我执行我的测试用例时,我只能在一个节点中查看我的执行,其他节点仍然保持不变,但它显示Done :/status但没有执行

请你帮我解决这个问题

提前致谢

Pav*_*cek 7

测试方法:

  • 使您的测试可以作为独立.jar文件运行.这意味着测试WIL其实不是一个@Test而是一些方法或片的内部码main的方法
  • 专业提示:如果可以,请针对同一个集线器运行节点.如果计算机位于同一网络中,您可以访问这些计算机,则可以执行此操作.
  • 如果可以这样做,您只需运行该.jar文件两次,告诉它huib的位置,并自动分配节点
  • 如果无法做到这一点,则必须.jar在每台计算机(节点)上部署这些文件并运行它们(在大多数情况下需要两个人)

例:

我自己的电脑10.131.7.11在本地网络中有IP .所以我将运行集线器,每个节点将执行此操作:

java -jar selenium-server-standalone-2.32.0.jar -role webdriver -hub http://10.131.7.11:4444/grid/register -port 7575 -browser browserName=firefox,version=18,platform=WINDOWS
Run Code Online (Sandbox Code Playgroud)

节点运行后,我将运行两次测试.然后,集线器将自动将浏览器分配给具体节点.

开发方法:

  • 您可以使用多线程并在两个线程中运行一次测试.

但由于我是测试人员,我使用的第一种方法:)我确实与我们的开发人员沟通,他们帮助我创建了多线程测试套件,这是一个白痴证明(在我自己测试:))