测试不会执行,直到我不在classng标签下的testng.xml中给出方法名称。如果我们不指定方法名,那么默认情况下,testng suite xml会默认执行类名下给出的所有方法。 你能指导一下我在这里缺少的东西吗?
Below is my testng.xml
<suite name="SDP_Suite" verbose="2">
<listeners>
<listener class-name="com.xxx.TestValidationErrorListener" />
<listener class-name="org.uncommons.reportng.HTMLReporter" />
<listener class-name="org.uncommons.reportng.JUnitXMLReporter" />
<listener class-name="org.testng.reporters.XMLReporter"/>
</listeners>
<test name="SDP_Tests">
<groups>
<run>
<include name="Regression"/>
<exclude name="config"/>
</run>
</groups>
<classes>
<class name="com.xxx.ResponsiveUI.tests.N1Tests"/>
<class name="com.xxx.ResponsiveUI.tests.Q1Tests"/>
</classes>
</test>
</suite>
答案 0 :(得分:0)
是的,TestNG将在case suite-test-classes-class中执行测试类中的所有测试。在你的xml中你排除了“config”组,可能有些测试取决于用这个组标记的配置方法,如果跳过这个配置,测试方法也会被跳过。
答案 1 :(得分:0)
不仅如此,如果要将类中的所有方法都作为测试执行,则必须将它们全部标记为@Test
或将其全部公开,并由类@Test
进行标记。< / p>
类级别@Test注释的作用是使该类的所有公共方法都成为测试方法,即使它们没有被注释也是如此。如果要添加某些属性,仍然可以在方法上重复@Test批注。
然后,您必须通过套件或IDE启动该类,否则,如果没有任何套件,Maven / Gradle将查找并测试该类。