我现在使用 TestNG 已经有一段时间了,但我仍然不知道这两个(@Test
以及< test>
在 suite.xml 中)的预期目的是什么,以及它们要表达的抽象是什么。
此外,如果有人可以分享他们对 TestNG 中其他元素的行为差异。例如,由或@AfterTest
@BeforeTest
触发,其中一个进入最终执行报告。@Test
<test>
@Test
< test>
我现在使用 TestNG 已经有一段时间了,但我仍然不知道这两个(@Test
以及< test>
在 suite.xml 中)的预期目的是什么,以及它们要表达的抽象是什么。
此外,如果有人可以分享他们对 TestNG 中其他元素的行为差异。例如,由或@AfterTest
@BeforeTest
触发,其中一个进入最终执行报告。@Test
<test>
@Test
< test>
@Test
表示测试方法。<test>
是您如何在testng.xml
.
在您的第二个问题上添加塞德里克的回答
@AfterTest 在 xml 之后运行
@AfterMethod 在您的 java 文件中的 @Test 之后运行。
例如。
public class TestCases{
@Test
public void test1()..
@Test
public void test2()..
}
public class MoreTestCases{
@Test
public void test1()..
@Test
public void test2()..
}
所以你有 4 个用 @Test 注释的测试用例
现在,因为在 xml 中是您想要构建测试运行的方式
<test>
<classes>
<class name = TestCases>
<methods>
<include name = test1/>
</methods>
</class>
<class name = TestCases>
<methods>
<include name = test1/>
</methods>
</class>
</classes>
</test>
所以你现在只从你的两个班级运行 test1 。
术语在开始时有点混乱......但我希望它有助于澄清一些事情。