用途:为 CIA 平台编写有效、可维护的单元测试,覆盖业务逻辑、数据校验与工具函数,并支持测试驱动开发(TDD)。
主要能力:
- JUnit 5:采用 AAA(Arrange-Act-Assert)结构组织测试,使用 @DisplayName 描述用例,@ParameterizedTest 配合 @CsvSource、@ValueSource 做参数化测试,@BeforeAll、@BeforeEach、@AfterEach、@AfterAll 管理测试生命周期。
- Mockito:通过 @ExtendWith(MockitoExtension.class)、@Mock、@InjectMocks 注入依赖;支持 when/thenReturn、参数匹配器、thenAnswer、thenThrow 打桩;使用 verify、times、never、verifyNoMoreInteractions 验证交互;用 ArgumentCaptor 捕获参数。
- AssertJ:提供链式断言,支持对象属性、集合内容与异常断言(assertThatThrownBy)。
- 代码覆盖率:使用 JaCoCo Maven 插件,目标为 80% 行覆盖率、70% 分支覆盖率,通过 prepare-agent、report、check 执行。
使用方式:按 src/test/java 目录结构组织测试,服务实现测试放 service/impl,集成测试放 service/api,工具类测试放 util,公共测试基础放 testfoundation(如 TestDataFactory、AbstractServiceTest)。
适用场景:服务层业务逻辑测试、数据校验测试、工具函数测试、TDD 流程。
限制:资料未提供具体安装命令、依赖版本细节、运行命令及平台支持范围,暂未提供。