Files
aiot-platform-cloud/docs/ops-architecture/part8-测试指南.md

1.3 KiB
Raw Blame History

Part 8: 测试指南

为保证 Ops 模块在高速演进过程中的稳定性,所有核心逻辑必须通过自动化测试覆盖。

8.1 单元测试规范

8.1.1 依赖模拟 (Mocking)

使用 JUnit 5Mockito。推荐继承项目通用的测试基类或使用 MockitoExtension

  • 核心原则Mock 掉 Mapper 层和外部 RPC 调用,专注验证 Service 层的状态转换逻辑。

8.1.2 状态机测试

针对 OrderStateMachine 的每一次修改,必须确保:

  1. 合法路径测试:验证允许的状态转换(如 ARRIVED -> COMPLETED)能成功。
  2. 非法路径测试:验证不允许的转换(如 PENDING -> COMPLETED)必须抛出异常。

8.2 集成测试规范

8.2.1 混合队列验证

由于采用 Redis + MySQL 双写架构,集成测试需重点验证:

  • 事务提交后Redis 队列中的分数Score与优先级Priority是否匹配。
  • QueueSyncHandler 是否正确处理了缓存失效后的补偿逻辑。

8.3 常用测试工具

  • Podam:用于快速生成填充了随机数据的 DO/DTO 对象。
  • BaseDbAndRedisUnitTest:支持 H2 内存数据库和内置 Redis 的集成测试基类。

下一章Part 9: 技术决策记录 (ADR)