1.TestNG简介
JAVA自动化测试最重要的基石。官网:https://testng.org
使用注解来管理我们的测试用例。
发现测试用例
执行测试用例
判断测试用例
生成测试报告
2.创建Maven工程
2.1创建一个maven工程
2.2设置maven信息
2.3设置JDK信息
2.4引入testng依赖
<dependencies><dependency><groupId>org.testng</groupId><artifactId>testng</artifactId><version>7.9.0</version><scope>test</scope></dependency></dependencies>
3.TestNG常用的注解
3.1将类或方法标记为测试的一部分
@Testpublic void testLogin(){System.out.println("测试登录的用例");}
属性:
@Test(enabled = false)
标识他不是一个用例。@Test(priority = -1)
标识测试方法的执行顺序,数值越小优先级越大。@Test(dependsOnMethods = "方法名")
解决测试用例之间的依赖关系。
3.2前后置注解
比如:连接数据库
package com.yufuabu.login;import org.testng.annotations.*;public class TestLogin {@BeforeSuitepublic void conn1(){System.out.println("测试套件前置:相当于整个项目");}@BeforeTestpublic void conn2(){System.out.println("测试模块前置:相当于一个模块");}@BeforeClasspublic void conn3(){System.out.println("测试类前置:相当于一个子模块");}@BeforeMethodpublic void conn4(){System.out.println("测试用例前置:相当于一个用例");}@Testpublic void test3(){System.out.println("test3");}@Testpublic void test1(){System.out.println("test1");}@Testpublic void test2(){System.out.println("test2");}@AfterSuitepublic void conn11(){System.out.println("测试套件后置:相当于整个项目");}@AfterTestpublic void conn22(){System.out.println("测试模块后置:相当于一个模块");}@AfterSuitepublic void conn33(){System.out.println("测试类后置:相当于一个子模块");}@AfterMethodpublic void conn44(){System.out.println("测试用例后置:相当于一个用例");}
}
3.3TestNG断言
@Testpublic void test3(){System.out.println("test3");Assert.assertEquals("实际结果","预期结果");}
@Testpublic void test3(){System.out.println("test3");Assert.assertTrue(true);}