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

Java 在Testng中使用数据提供程序和并行程序,如何在给定测试的同一线程中运行方法前、方法后和测试。?,java,multithreading,parallel-processing,testng,testng-dataprovider,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

我正在通过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 -->

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

是否尝试了单线程?就像下面的例子

@Test(singleThreaded = true)

 public class DemoForMethodOrdering {

  ///implementation here
}
请在testng文档中查找有关单线程的信息

谢谢,,
Murali

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

@Test(singleThreaded = true)

 public class DemoForMethodOrdering {

  ///implementation here
}
请在testng文档中查找有关单线程的信息

谢谢,,
穆拉里

见。
BeforeTest
Test
AfterTest
方法始终在同一线程中运行。您可以使用来测试这一点。看,看。
BeforeTest
Test
AfterTest
方法始终在同一线程中运行。您可以使用来测试这一点。请参阅。是的,我的代码在singleThreaded=true时运行良好。问题来自多线程。嗨,只有当我们指定singleThreaded=true时,在多线程中才是。该类中的所有方法都将由同一线程执行。这就是你想要的,对吗?嗨,谢谢你的回答。然而,我的要求是打开7个浏览器,每个浏览器都应该在独立的线程中运行,所以在该浏览器中测试用例的前后和测试都发生在同一个线程中。是的,对于singleThreaded=true,我的代码工作得很好。问题来自多线程。嗨,只有当我们指定singleThreaded=true时,在多线程中才是。该类中的所有方法都将由同一线程执行。这就是你想要的,对吗?嗨,谢谢你的回答。然而,我的要求是打开7个浏览器,每个浏览器应该在独立的线程中运行,所以在该浏览器中测试用例的前后和测试都发生在同一个线程中。