testng - TestNG中具有多个类的优先级

标签 testng

我面临以下问题:我创建了两个类,其中包括具有优先级属性的@Tests:

@Test( priority = 1 )
public void testA1() {
    System.out.println("testA1");
}

@Test( priority = 2 )
public void testA2() {
    System.out.println("testA2");
}

@Test( priority = 3 )
public void testA3() {
    System.out.println("testA3");
}


...和...

@Test( priority = 1 )
public void testB1() {
    System.out.println("testB1");
}

@Test( priority = 2 )
public void testB2() {
    System.out.println("testB2");
}

@Test( priority = 3 )
public void testB3() {
    System.out.println("testB3");
}


我将两个类都放在了testng.xml中的一个测试中,但是当我运行测试时,它将根据两个类的优先级对我的@Tests进行排序:

testA1
testB1
testA2
testB2
testA3
testB3


我期待以下结果:

testA1
testA2
testA3
testB1
testB2
testB3


我的问题是,如何防止基于两个类来订购我的@Tests并同时仅从一个类运行@Tests?

最佳答案

在套件xml中,使用group-by-instances =“ true”

示例,其中TestClass1和TestClass2与您的内容相同

<suite thread-count="2" verbose="10" name="testSuite" parallel="tests">
<test verbose="2" name="MytestCase" group-by-instances="true">
    <classes>
        <class name="com.crazytests.dataproviderissue.TestClass1" />
        <class name="com.crazytests.dataproviderissue.TestClass2" />
    </classes>
</test>
</suite> 


我得到了输出

testA1

testA2

testA3

testB1

testB2

testB3

关于testng - TestNG中具有多个类的优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26632241/

相关文章:

java - 由于在单元测试中捕获异常,Gradle 在三叶草分析期间构建失败

java - 如何使用 TestNG 使用 @Test 按顺序运行前三个方法,并使用 @Test 并行运行接下来的三个方法?

java - org.openqa.selenium.json.JsonOutput.write(Ljava/lang/Object;Ljava/lang/reflect/Type;) 由于 JsonException : Attempting to close incomplete json stream

java - 模拟 InfluxDB 客户端来测试 MetricCollector 类

java - testNG 优先级和依赖性

java - Hamcrest.Matchers : JSON Nested Array

java - 如何将 TestNG 报告index.html转换为pdf

java - 在不同的浏览器 session 中运行测试,但始终得到 'NoSuchSessionException: Session ID is null. Using WebDriver after calling quit()?'

java - 在 selenium webdriver 中生成报告

java - 在 Allure 报告中,如何为 TestNG 中的参数化测试中的每个数据集提供不同的严重性?