Unit testing 类似crud资源的集成测试

Unit testing 类似crud资源的集成测试,unit-testing,rest,integration-testing,Unit Testing,Rest,Integration Testing,假设我们有一个包含多个实体的crud rest应用程序,我们正在考虑进行集成测试 所有这些crud端点都继承自同一抽象crud类。 对这些路由进行集成测试的最佳方法是什么 测试抽象CRUD类,并对所有不同于默认CRUD操作的api路由进行集成测试 干燥(无需对已测试的抽象积垢路线重复测试 不是真正的集成测试(从不测试真正的crud方法) 由于这不是一个真正的集成测试,因此可能会错过一些导致api端点处于错误状态的错误 编写通用测试函数以测试所有crud路由 dry(只需执行类似于testD

假设我们有一个包含多个实体的crud rest应用程序,我们正在考虑进行集成测试

所有这些crud端点都继承自同一抽象crud类。 对这些路由进行集成测试的最佳方法是什么

测试抽象CRUD类,并对所有不同于默认CRUD操作的api路由进行集成测试
  • 干燥(无需对已测试的抽象积垢路线重复测试
  • 不是真正的集成测试(从不测试真正的crud方法)
由于这不是一个真正的集成测试,因此可能会错过一些导致api端点处于错误状态的错误

编写通用测试函数以测试所有crud路由
  • dry(只需执行类似于testDefaultCrudBehaviour(“/api端点/实体”)的操作
  • 但不是真的
手动集成测试所有crud路线
  • 潮湿的
  • 不干燥(大量代码重复,大量噪音)

是的,详细测试抽象类

1) 您仍然需要测试您的子类,以查看它们是否连接到抽象类。在子类测试中,您可能不需要太多细节

2) 始终编写可以重新运行的测试方法。这个回归测试过程对于确保您对未来变更过程的信心至关重要

3) 虽然干燥通常是一个重要的原则,但在测试中,您确实需要进行大量重复。测试代码和案例处理的适当分解对于健全性至关重要,但是作为回归测试的一部分自动测试的路径覆盖率非常重要