我有一个测试,它为testng中的一组测试设置环境变量,我想从testng报告中跳过这个测试计数。
我的testng.xml看起来像:
<suite name="sanity" verbose="1">
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter"/>
<listener class-name="org.uncommons.reportng.JUnitXMLReporter"/>
</listeners>
<test name="tes1">
<classes>
<class name="com.group.SantiyStartUp"/>
<class name="com.group.Test1"/>
<class name="com.group.Test2"/>
</classes>
</test>
</suite>
SanityStartUp将静态变量"environment"
设置为"Sanity"
和Test1
以及Test2
类,将检查environment
变量是否为Sanity
然后做一些行动。
它工作正常,但我关注的是SanityStartUp测试在报告中显示为一个测试,我想避免。
任何人请帮助我。
答案 0 :(得分:2)
您可以从评论中为您提供的简单解决方案开始 - 使用@BeforeSuite
甚至@BeforeTest
代替@Test
。
此外,您还需要了解侦听器如何在TestNG中添加作品。您可以在代码,testng.xml或类路径中的任何位置添加侦听器,它将应用于所有类和测试。所以你可以尝试编辑你的监听器,忽略一些类或测试。
最后,您可以使用命令行将它们作为JVM的系统环境变量传递,并在测试中读取它们。