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

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

澹台玉石
2023-03-14

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

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

虽然我的一些测试被指定为并行或顺序测试,但一些测试可能包含一个额外的标签“冒烟测试”。在这个场景中,我希望能够只运行那些被归类为“烟雾测试”的组件。当我运行测试时,它要么找不到任何测试,要么只是运行所有分组为“sequential-test”的测试。我似乎不能将测试运行从这个xml文件限制到那些被分组为“冒烟测试”的测试。在同一个类中,我有多个testNG方法,它们要么具有“并行测试”组,要么具有“序列测试”组。看起来TestNG xml文件所做的只是忽略了“并行测试”组。这很好,但是如果Testng方法包含'parallel-test'和'frick-test'组怎么办?我想运行每一个测试,不管它是并行测试还是顺序测试,但只运行那些有附加组标记'froke-test'的测试。我的环境如下:

  • Intellij
  • Maven
  • 测试ng
  • 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>

共有1个答案

师博
2023-03-14

以下XML套件应运行具有组'frick-test'的所有测试方法

<?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>
                <include name="smoke-test"/>
            </run>
        </groups>
        <classes>
            <class name="WebTests.Test"/>

        </classes>
    </test>
</suite>
 类似资料:
  • 我有一个Selenium项目,使用Maven和TestNG。 我已经尝试了几种不同的方法来使用Maven命令运行测试(我使用的是sure fire插件)。当我运行Maven时,测试不会运行。没有错误。 有没有人有一个很好的例子或教程,我可以遵循使我的测试运行时,我使用mvn测试? 提前道谢。 以下是输出: 和POM文件中的surefire配置:

  • 我正在使用Maven对一个网站运行TestNG集成测试。目前,我可以使用此命令运行特定的测试类: 我还希望能够指定一个TestNG套件XML文件来运行一系列带有特定参数的类。 我可以在我的POM中设置故障安全插件来接受suiteXmlFiles参数,如下所示: 让我发出这个命令: 但现在我不能用-Dit了。test=“MyTestClassname”选项,因为Maven现在试图传递一个空值作为套件

  • 试图实现硒cucumber测试而不是JUnit。 我的疑问是 testng中@Runwith(Cucumber.class)的替代选项是什么

  • 你能帮助我有没有什么方法运行空手道跑者文件与TestNG框架工作。你的答案真的会让我们做出决定。 我经历了各种与空手道相关的测试的帖子。但不幸的是我无法触发我的脚本。 注意:我在代码中扩展了KarateRunner类并使用了@KarateOptions。

  • 问题内容: Windows上是否可以使用位于特定文件夹中的JRE运行JAR文件?类似于Eclipse在您给它的某些路径中寻找其JRE的方式。一些Windows可执行代码(C或C ++)或批处理文件都可以完成这项工作。谢谢! 问题答案: JRE目录具有bin / java.exe。 您只需使用以下命令即可从该JRE运行jar 如果您不想每次都打开控制台,只需将上面的行放在.bat文件中,然后双击。

  • 在我的项目文件夹中,我有很多子文件夹,每个子文件夹中都有js代码和test.js文件。我想能够测试特定的文件。例如,假设在我们的项目文件夹中有“fib”文件夹: 现在,我从练习文件夹中执行jest命令: 我得到: 如果我只是开玩笑,我会做所有的测试。如果我将fib文件夹移出练习文件夹,它会按预期工作。以下是所有文件的代码: index.js: test.js: package.json: 我尝试了