准备工作
Maven项目引入相关依赖:
|
|
受测试的类:
|
|
开始测试
测试类:
|
|
@Mock 注解
|
|
@Spy 注解
调用真实的实例方法,而不是Mock出来的
|
|
补充注解
- @BeforeEach :会在每个测试方法执行前运行,适用于需要为每个测试单独初始化环境的场景(例如重置数据、创建新对象等),确保测试间彼此独立。
- @BeforeAll:只在整个测试类中第一次测试前运行一次。适用于那些只需要一次性执行的初始化工作,如建立数据库连接、加载共享资源等。在JUnit 5中,除非使用 PER_CLASS 测试实例生命周期,否则 @BeforeAll 方法必须是静态的。
- @AfterEach:在每个测试方法执行完后运行,通常用来清理每个测试产生的状态或释放资源。
- @AfterAll:在整个测试类中所有测试方法都执行完毕后运行,用于做全局性的清理工作(例如关闭共享的数据库连接或释放其他全局资源)。在JUnit 5中,除非设置测试实例为 PER_CLASS,否则 @AfterAll 方法必须是静态的。