Selenium(JAVA)Grid仅在Windows中并行启动10个浏览器

时间:2018-10-19 05:26:26

标签: java windows selenium selenium-webdriver selenium-grid

我正在使用TestNg + Selenium(JAVA)网格来执行并行执行。

我的机器\服务器配置为

  • 处理器:Intel Xeon,CPU E5-2603 v4、2.20 GHz(8个处理器)
  • RAM:64 GB
  • 系统类型:64位
  • OS:Window Server 2012 R2 Standard

我在同一台计算机上有HUB和3个节点

  • HUb命令:java -jar selenium-server-standalone-3.1.0.jar -role hub
  • 节点命令:java -Dwebdriver.chrome.driver =。/ chromedriver.exe -jar selenium-server-standalone-3.1.0.jar -role节点-hub http://localhost:4444/grid/register-浏览器browserName = chrome,maxInstances = 20-端口6661
    (3个不同节点的端口号分别为6661,6662和6663。)

我有100多个带有 @Test TAG的测试用例,但是一次只有10个测试用例可以并行执行。我想同时执行50多个测试。我想念什么?
谢谢!

1 个答案:

答案 0 :(得分:2)

您可以在xml中使用以下配置来设置并行线程数。例如:

如果要并行运行测试方法(在此示例中,MyTest类包含多个@Test方法)

<suite name="mySuite" parallel="methods" thread-count="50">
  <test name="myTests">
    <classes>
      <class name="test.sample.MyTest1" />
    </classes>
  </test>     
</suite>

<suite name="mySuite" parallel="methods" thread-count="50">
  <test name="myTests">
    <packages>
      <package name="test.sample" />
   </packages>
 </test>
</suite>

如果要为50个测试类运行50个线程(在本例中为1个类= 1个测试)。

<suite name="mySuite" parallel="tests" thread-count="50">
  <test name="thread 1">
    <classes>
      <class name="test.sample.MyTest1" />
   </classes>
  </test>
  <test name="thread 2">
    <classes>
      <class name="test.sample.MyTest2" />
   </classes>
  </test>
   ...
  <test name="thread 50">
    <classes>
      <class name="test.sample.MyTest50" />
   </classes>
  </test>
</suite>

有关其他选项,您可以签出TestNG文档:https://testng.org/doc/documentation-main.html#parallel-tests