TestNG 完成一次测试通常需要 3 个步骤
1:在你的代码里书写测试业务逻辑并加入 TestNG 注解.
2:将你的测试信息(例如:你希望运行测试类名、测试组名等)加入一个 testng.xml 文件或 build.xml 文件.
3:运行 TestNG
基础概念
1:一个 suite 通过一个 XML 文件表示,在文件中使用<suite>标签定义,它可以包含一个或多个测试;
2:一个测试由 <test> 标签表示,它可以包含一个或多个 TestNG 类;
3:一个 TestNG 类是至少包含一个 TestNG 注解的 Java 类,它由<class>标签表示,可以包含一个或多个测试方法;
4:一个测试方法是一个在代码中被 @Test注解的 Java 方法
注释
注意点
1:该方法为当前类的第一个方法(而非整个方法)
@BeforeClass 被注解的方法将在当前类第一个方法执行之前执行,注:如果在@Test使用 groups属性时, @BeforeClass 会无法执行,参考解决方案
@AfterClass 被注解的方法将在当前类第一个方法执行之后执行
2:TestNG 将保证@Before 的方法按继承顺序执行(顶层父类优先,然后沿着继承链向下执行),
@After 的方法逆序执行(按继承链反向执行)
3:注释的通用功能
1:什么是强依赖,什么是弱依赖?
硬依赖,所有依赖的方法必须运行且成功,如果依赖的方法中存在失败,在测试报告中会将当前测试方法标记为 “SKIP”。
软依赖,测试方法在其所依赖的方法运行之后总会执行,即使依赖的方法有运行失败的。当你想使测试方法以某种特定的顺序运行,但其运行成功并不依赖其它方法时,软依赖的这种特性将会很有用。通过在注解@Test添加alwaysRun=true属性获取软依赖的特性。
2:inheritGroups的具体的用法
TestNG的运行
测试方法、测试类、测试组别
测试方法
测试方法使用@Test注解标识的方法。这些方法的返回值会被忽略,除非你在 testng.xml 中指定 allow-return-values 值为 true:
测试组别
DataProviders 中的定义的参数 传递复杂的对象的过程
并行测试集
参考网站