使用组时无法识别 TestNG 参数
Posted
技术标签:
【中文标题】使用组时无法识别 TestNG 参数【英文标题】:TestNG Parameters are not recognized when using Groups 【发布时间】:2021-04-27 20:36:39 【问题描述】:使用 testNG xml 运行测试套件时,测试将正常运行,并且 xml 文件中的所有参数都按预期使用。当我将分组添加到我的@Test 方法并添加组 xml 时,我得到一个失败的:java.lang.nullpointerException。 @Test 在运行类或从 XML 时完美运行。
之前:一切正常
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="Suite1" verbose="1" >
<parameter name="User" value="Admin"/>
<parameter name="Password" value="something"/>
<test name="ExampleTest" >
<classes>
<class name="test1"/>
<class name="test2"/>
</classes>
</test>
</suite>
之后 - @BeforeClass 因 Null.PointerException 而失败
<suite name="Suite1" verbose="1" >
<parameter name="User" value="Admin"/>
<parameter name="Password" value="something"/>
<test name="ExampleTest" >
<groups>
<run>
<include name = "setup"/>
<exclude name = "functional"/>
<include name = "regression"/>
</run>
</groups>
<classes>
<class name="test1"/>
<class name="test2"/>
</classes>
</test>
</suite>
注意:我已经用 @BeforeClass(groups = "setup") 标记了 @BeforeClass,但它不起作用。
【问题讨论】:
【参考方案1】:所有,答案是这样的。我的测试类扩展了一个使用@BeforeSuite 和@AfterSuite 的类。当我将 alwaysRun = true 添加到 @BeforeSuite/@AfterSuite 时,它按预期工作。
【讨论】:
以上是关于使用组时无法识别 TestNG 参数的主要内容,如果未能解决你的问题,请参考以下文章