java - 在 Testng 中使用数据提供程序和并行,如何在给定测试的同一线程中运行方法之前、方法之后和测试。

标签 java multithreading parallel-processing testng testng-dataprovider

我正在通过 testNG xml 运行我的测试套件。这是 xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" data-provider-thread-count="4" parallel="methods">
  <test name="Test" group-by-instances="true" parallel="instances">
    <classes>
      <class name="packageName"></class>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

我正在使用带有注释parallel=true 的数据提供程序。我有大约 2000 个测试用例,它们循环运行一个具有不同数据的测试用例。当测试不并行时,测试运行良好。 当我尝试在 4 个线程中并行运行测试时,before 和 after 方法在同一个线程中执行,但是我的测试方法分配了完全不同的线程。 我如何确保对于测试用例,方法之前、方法之后和测试都在测试实例的同一线程中运行。

最佳答案

你尝试过单线程吗?就像下面的例子

@Test(singleThreaded = true)

 public class DemoForMethodOrdering {

  ///implementation here
}

请在 testng 文档 here 中查找有关 singleThreaded 的信息

谢谢你, 穆拉利

关于java - 在 Testng 中使用数据提供程序和并行,如何在给定测试的同一线程中运行方法之前、方法之后和测试。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35196311/

相关文章:

delphi - 如何使用 Delphi 和 WMI 查找可用并行端口及其 I/O 地址

java - C/C++/Java问题: will the expression used in for loop evaluate multiple times?

multithreading - Lua协程还有什么用?为什么此代码无法按我预期的那样工作?

java - 已弃用的 org.jboss.resteasy.spi 异常的替代品是什么?

iphone - Objective-C中的静态变量和多个线程

wpf - WPF中的多线程

r - 使用 R 加速循环和条件

并行解析文件

java - 泛型未经检查的转换警告

java - 如何设置@OneToOne映射的约束名称?