这个问题就在I had asked here的旁边。在这个问题中,我想集中讨论测试基于Spring的REST控制器的方法。
目前,我设置测试的方式是--在数据库中使用spring-test-mvc框架进行端到端测试。
我想摆脱一个数据库层。为什么?我真的需要一个数据库层吗?我不能模拟一个数据库吗?
因此,我想知道一种高效的测试基于Spring的REST控制器的方法,它结合了、Mockito、等框架。
请与我分享并引导我朝着正确的方向前进。
发布于 2012-02-07 15:58:12
通常,控制器只与服务交互。大多数控制器/服务交互都是数据和/或状态编组。(以及异常处理。)嘲笑/顽固不化(呆板?)服务层允许我们确保控制器处理它与其服务之间可能发生的任何事情。
“完整和有保证”取决于你。例如,与User数据库交互的服务可能只做几件事:检索用户、检索用户列表、更新用户或抛出特定于应用程序或框架的异常。从控制器的角度来看,这些都是需要测试的东西--这不是很多东西,所以“完全性”是相当直接的。
所有这些都不能测试服务或DAO。例如,服务可能会使用“堆栈”DAOs进行测试。DAOs可能会使用内存中的DB进行测试(不过老实说,我并不总是测试DAOs,除非它们具有重要的、由开发人员生成的SQL)。
所有这些都不是集成测试的替代品,它可以测试路由、错误和异常条件处理、数据格式化和内容等等。
https://stackoverflow.com/questions/9165423
复制相似问题