Junit5测试框架
一:创建一个测试用例
junit5的测试依赖:
<!-- junit5新的编程和扩展模型--> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <version>5.8.2</version> <scope>test</scope> </dependency>
首先,在src/main/java目录下进行随意类的创建
public class Example { // 右键-》goto -》选择地址 -》选择方法 void hogwarsDemo(){ System.out.println("cehs"); } }
右键 -> go to -> Test
进行选择,classname为测试类名称,Destination package为目标测试目录,为test下的目录,generate:进行勾选,创建两个钩子函数,下面member选择你要测试的
二、注解
public class CaseTest { // 注: // All 和 Each的区别 // 1、All 在一个测试类中,只执行一次,但是Each是有多少个方法调用,执行多少次 // 2、All 注解修饰的static方法,不能修饰普通方法,Each可以修饰普通方法 // 3、BeforeAll、AfterAll 的优先级高于BeforeEach、AfterEach @BeforeAll static void setUpAll(){ System.out.println("CaseTest所有用例执行之前的动作"); } @AfterAll static void tearDownAll(){ System.out.println("CaseTest所有用例执行之后的动作"); } @BeforeEach void setUp(){ System.out.println("CaseTest每条用例执行前置动作"); } @AfterEach void tearDown(){ System.out.println("CaseTest每条用例执行后置动作"); } @Test // 测试标题 @DisplayName("CaseTest的一个测试") void hugwarts(){ System.out.println("CaseTest的一个测试"); // 断言 assertEquals(2,1+1); } @Test @DisplayName("CaseTest的二个测试") void hugwarts2(){ System.out.println("CaseTest的二个测试"); // 断言 assertEquals(2,1+1); } }
三、断言
AssertEqTest
public class AssertEqTest { @Test @DisplayName("assertEquals断言测试") void hogawarts(){ System.out.println("断言测试"); // assertEquals 第一个参数:预期结果 第二个参数:实际结果 assertEquals(2,1+1); } }
AssertTrueTest
public class AssertTrueTest { // AssertTrueTest 内结果为true,则通过 @Test void expressionDemo(){ System.out.println("断言结果为true"); assertTrue(3>1); } @Test void boolDemo(){ System.out.println("断言结果为true"); assertTrue(true); } }
AssertNoNullTest
public class AssertNoNullTest { // AssertNotNull 传值为空则失败 @Test void nullDemo(){ System.out.println("断言传值为空的场景"); assertNotNull(null); } @Test void notnullDemo(){ System.out.println("断言传值不为空的场景"); assertNotNull("sad"); } }
AssertAllDemoTest
public class AssertAllDemoTest { // 如果多个用例存在断言,使用assertAll进行测试,每个断言都可以被执行 // 第一个参数是一个描述信息,代表了这个分组断言是那一个应用场景,也可以不写 @Test void hogwarts() { System.out.println("断言测试AssertAll"); assertAll("All", () -> assertEquals(2, 1 + 1), () -> assertEquals(3, 1 + 1), () -> assertEquals(2, 1 + 1) ); } }