当前位置: 首页 > 知识库问答 >
问题:

TestNG并行执行

薛弘阔
2023-03-14

我有4个@Test方法,希望每个方法都运行3次。我想在12个线程中同时执行所有这些。

我创建了一个testng。像这样的xml文件

<suite name="Suite1" verbose="1" parallel="methods" thread-count="100">

  <test name="Test1">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

  <test name="Test2">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

  <test name="Test3">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

</suite>

如果我设置并行="方法",TestNG在Test1的4个线程中执行4个测试方法,之后对Test2执行相同的操作,然后对Test3执行相同的操作。但是我不想在运行Test2之前等待Test1完成。TestNG能够运行Test1、Test2

有没有办法告诉TestNG不要等待,在单独的线程中为所有测试启动所有方法?

共有3个答案

弓胜泫
2023-03-14

尝试使用此选项:

<suite name="suite"  parallel="methods"  thread-count="20">

希望这有帮助。

仇高韵
2023-03-14

如果这些测试相同,那么可以使用invocationCount和threadpoolsize。在@Test注释中,将invocationCount=3和threadPoolsize添加为3。在测试中。xml,只创建一个测试(而不是3个),设置parallel=methods,线程计数=4。

希望有帮助。

俞博涛
2023-03-14

让套件运行并行测试,然后每个测试都可以运行并行方法。类似于:

<suite name="Suite1" verbose="1" parallel="tests" thread-count="10">

  <test name="Test1" parallel="methods" thread-count="4">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

  <test name="Test2" parallel="methods" thread-count="4">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

  <test name="Test3" parallel="methods" thread-count="4">
    <classes>
      <class name="Tests"/>
    </classes>
  </test>

</suite>
 类似资料:
  • 我试图使用Selenium和TestNG进行测试设计,我将每个@test放在一个单独的类中,并对所有类使用once@beforeSuite&@afterSuite,原因是: 代码易于维护 数据驱动,以便能够选择通过文件运行的类。 案例1类: 注意:如果上面的代码在套件中使用单个运行,它就可以正常工作。 问题是它是否像下面的配置那样并行运行。

  • 类TestParallel.FirstTestClass线程ID:22名称:TestNG 类TestParallel.SecondTestClass线程ID:23名称:TestNG 类TestParallel.TestSetup线程ID:23名称:TestNG java.lang.NullPoInterException位于TestParallel.TestSetup.OnTestFailure(

  • 我使用TestNG Selenium(ChromeWebDriver)并行执行测试时遇到了一些问题。基本上,我的测试实际上看起来并不是真正并行执行的。 尝试实现:从Excel电子表格读取数据。TestSuite中的所有测试用例。java应该在单独的WebDriver实例中对每一行数据执行——并行运行。例如,在单独的浏览器窗口中同时测试5个单独的登录/密码组合。 简图: TestNG。xml: 输出

  • 问题内容: 我有一个测试,可以从数据提供者那里接收数据。我希望此测试与数据提供者的不同值并行运行。 我尝试了类似的方法: } 我收到的输出是: 你好:10 你好:12 你好:17 你好:11 你好:16 你好:14 你好:13 你好:15 产生10个线程,而我在线程池大小中指定5个。您能否告诉我们必须在上述代码段中添加哪些内容来控制数据提供程序线程池的大小。 问题答案: 您需要使用。在和不需要的值

  • 本文向大家介绍如何在TestNG中实现并行执行?,包括了如何在TestNG中实现并行执行?的使用技巧和注意事项,需要的朋友参考一下 我们可以借助TestNG实现并行执行。TestNG中有一个并行属性,用于此实现。TestNG中的并行执行与另一个称为thread-count的属性相关联。 parallel属性可以具有以下列出的值- 方法。 类。 执行个体 测验 示例 Testng xml文件。 对于

  • 我一个类有5到6个方法,想在不同的节点上并行运行方法,我有网格2设置,里面有4个节点。 下面是我的测试。xml 我有一个测试工具,它初始化了login、common和utils类 在我的测试类中,我扩展了测试工具,在@Beforemethod中,我调用了inilze方法 如果我运行测试,我会看到以下问题 两个浏览器在每个节点中打开一个,但只有一个浏览器启动应用程序,另一个不启动。 如果我遗漏了什么