示例代码取自 ThoughtWorks 内部报销系统,
- 系统报销根据所得 ExpenseService.Project 的类型与名称判定产生何种类型的 ExpenseService.Expense
- 在报销过程中,可能存在数据丢失或伪造的情况,所以需要判定 ExpenseService.Project 类型是不是无效的
项目测试代码分别测试五种不同的情况
- 内部项目
- 外部项目 + 规范名称 A
- 外部项目 + 规范名称 B
- 外部项目 + 其他名称
- 错误项目
通过使用 AssertJ,采用 Fluent API 的方式断言,更加清晰和直观的对需要判定的内容审查
- gradle
- Java 8
- JUnit 5
- AssertJ 3.10.0