便捷能力:
- 自定义注解
- 扩展junit5
- 报警
- 报告
- http
- mysql
- utils
- 内部组件(略)
规范化组织:
- 规范约定和限制
- 用例格式限制和描述
基本能力:
- 用例运行
- 用例报警
- 用例分级
- 用例管理
- 用例维护
新建一个spring boot项目,项目名称为AutoApi。(注意看图)
Spring Boot 我们使用2.4.4版本。这里能选到就选,选不到就随便选一个,后续我们在pom文件里改spring boot版本
Web--> 勾选 Spring Web
新建完成后,去修改 pom文件,改成2.4.4
删除这几个文件,用不到。只保留src .gitignore pom.xml三个文件
三、pom.xml文件我提前把整个项目需要用到的依赖,先写到文件里。
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.4.4
com.example
AutoApi
0.0.1-SNAPSHOT
AutoApi
Demo project for Spring Boot
1.8
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.projectlombok
lombok
1.18.16
provided
org.springframework.boot
spring-boot-starter-aop
org.springframework.boot
spring-boot-configuration-processor
org.springframework.boot
spring-boot-starter-jdbc
mysql
mysql-connector-java
8.0.13
org.apache.commons
commons-lang3
3.9
org.springframework.boot
spring-boot-starter-jdbc
com.google.guava
guava
30.1.1-jre
org.springframework.boot
spring-boot-maven-plugin
我们基于junit进行的二次开发,所以要倒入junit包,以下四个:
org.junit.jupiter
junit-jupiter
5.6.2
org.junit.jupiter
junit-jupiter-engine
5.6.2
org.junit.jupiter
junit-jupiter-api
5.6.2
org.junit.platform
junit-platform-launcher
1.6.2
四、整个项目结构
五、junit5基本注解
5.1 @BeforeAll @BeforeEach @AfterAll @AfterEach
注意:@BeforeAll 与 @AfterAll 标签下 的两个方法,是静态方法,不然报错。
package com.example.autoapi.test;
import org.junit.jupiter.api.*;
public class Junit5Demo {
@BeforeAll
public static void beforeAll(){
System.out.println("Junit5Demo.beforeAll");
}
@BeforeEach
public void beforeEach(){
System.out.println("Junit5Demo.beforeEach");
}
@AfterAll
public static void afterAll(){
System.out.println("Junit5Demo.AfterAll");
}
@AfterEach
public void afterEach(){
System.out.println("Junit5Demo.afterEach");
}
@Test
public void test1(){
System.out.println("Junit5Demo.test1");
}
@Test
public void test2(){
System.out.println("Junit5Demo.test1");
}
}
输出结果:
Junit5Demo.beforeAll
Junit5Demo.beforeEach
Junit5Demo.test1
Junit5Demo.afterEach
Junit5Demo.beforeEach
Junit5Demo.test1
Junit5Demo.afterEach
Junit5Demo.AfterAll
5.2 @Tag @Timeout @Test
每条测试case,需要打@Test
@Tag 给case打标签,比如级别P0
@Timeout 超时,单位是秒,测试case执行超过这个时间,报错
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
public class Junit5Demo2 {
@Tag("P0")
@Timeout(2)
@Test
public void testNormal(){
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Junit5Demo2.testNormal");
}
}
三、junit接口自动化框架-自定义注解-注解检查_傲娇的喵酱的博客-CSDN博客
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)