TestNG:使用Testng XML文件运行特定的组测试

问题描述

我有一个testng xml文件,该文件被设置为运行特定类,该类具有包含以下组标记或被分组为以下其中之一的方法:

  • 并行测试
  • 顺序测试
  • 烟雾测试

尽管我的某些测试被指定为并行或顺序进行,但某些测试可能包含附加的标签“烟雾测试”。在这种情况下,我希望能够只运行那些被分组为“烟雾测试”的程序。当我运行测试时,它要么找不到任何测试,要么运行所有分组为“顺序测试”的测试。我似乎无法将从此xml文件运行的测试限制为仅归类为“烟雾测试”的那些测试。在同一个类中,我有多个testNG方法都具有“并行测试”组或“顺序测试”组。看起来TestNG xml文件正在做什么,只是忽略了“并行测试”组。太好了,但是如果Testng方法包含“并行测试”和“烟雾测试”组怎么办?我想运行每个测试,而不管它是用于并行测试还是顺序测试,但是仅那些具有附加组标记“ smoke-test”的测试。我的环境如下:

  • IntelliJ
  • 行家
  • TestNG
  • Java

请帮助。请参阅WebTest.Test类中的示例测试方法:

@Test(groups = {"sequential-test","smoke-test"},description = "Test will validate something")
public void RunTest()
{
    //do something

}

这是下面的示例xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<!--This is a template to be modified for QA environment tests-->
<suite name="Smoke Test">
    <listeners>
        <listener class-name="Listeners.Listeners"/>
        <listener class-name="Listeners.ExtentListeners"/>
    </listeners>
    <parameter name="environment" value="QA"></parameter>
    <test verbose="2" name="Sequential tests" parallel="methods" thread-count="1">
        <!--<groups>
            <run>
                <exclude name="parallel-test"/>
            </run>
        </groups>-->
        <classes>
            <class name="WebTests.Test">
                <methods>
                    <include name="smoke-test"/>
                </methods>
            </class>
        </classes>
    </test>
</suite>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)