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

如何在 TestNG 中运行多个并行套件

张积厚
2023-03-14

主套房.java

@RunWith(Suite.class)
@Suite.SuiteClasses({
    TestSuite1.class,
    TestSuite2.class, 
    TestSuite3.class
})
public class MainSuite {
  private MainSuite() {}
}

对于每个测试套件,都有包含@Test的类

例如

TestSuite1.java

@RunWith(Suite.class)
@Suite.SuiteClasses({
    TestClass1.class
})

public class TestSuite1 {
  private TestSuite1() {}
  }

TestClass1.java

@Test
public void test1(){}

@Test
public void test2() 
....

所以我的问题是如何运行TestSuite1、TestSuite2

共有1个答案

詹斌蔚
2023-03-14

根据testng实现,不允许在TestNG.xml中并行运行套件。必须使用Maven或从命令提示符。

在cmd中,例如

  java org.testng.TestNG -suitethreadpoolsize 3 testng1.xml testng2.xml testng3.xml

有关详细信息,请参阅此处http://testng.org/doc/documentation-main.html#parallel-运行

 类似资料:
  • 请让我知道是否可以通过TestNG运行并行套件?

  • 我有一个TestNG XML,格式如下: 这个套件有两个类,每个类都有一些@Test方法。现在我想让我的套件以同样的顺序再运行3次,就像它运行一样,即所有的class1方法,然后是class2方法。我怎样才能做到这一点?我正在使用Selenium WebDriver和核心Java来运行我的自动化套件。

  • 我试图用Cucumber,用不同的参数并行运行多个testng套件。对于每个tesng套件,我试图传递不同的浏览器、testinfo等等。我想通过maven命令行选项来实现这一点。我关注了https://rationaleemotions.wordpress.com/2016/03/29/parallel-execution-of-multiple-testng-suites/#comment-1

  • 我有一个maven项目,有3个TestNG套件和4个测试类,我想在jenkins中运行一个特定的套件,我搜索了很多,但只找到了一个命令放在goal来指定特定的套件,但当我这样做时,它也会运行所有其他套件。我被困在这里很长时间了,请引导我完成这个过程。我还想知道是否有任何设置我可以这样做,如果我选择一个套件运行,我可以运行该套件的任何特定类。我已附上我的项目结构在这里的形象,任何输入将不胜感激。谢谢

  • 我无法在eclipse中使用testNG for Selenium2运行测试套件。TestNG似乎正在运行,但运行的测试总数始终为0。我可以直接使用selenium2从eclipse运行这个测试(以->Java应用程序运行)。我可以用@test、@beforeMethod、@afterMethod注释测试一个小程序的testNG