我应该在哪一层为新的Spring MVC应用程序编写测试用例?

时间:2019-01-23 08:28:06

标签: java unit-testing junit testng integration-testing

我们正在开发新的Spring MVC应用程序,其中具有DAO和服务层。我对应该在junit或testNG中编写测试用例的哪一层感到困惑。这是什么标准做法?

2 个答案:

答案 0 :(得分:0)

我会考虑使用junit和MockMvc为您的端点编写常规(无特殊情况)集成测试,并使用junit和Mockito来测试服务类中的特定业务案例的单元测试。然后,在单元测试中,您可以测试所有可能的情况和极端情况。单元测试更小巧,更易于维护,而集成测试则可确保您的API在常规级别上正常工作。

答案 1 :(得分:0)

在控制层中编写案例总是更好。
如果测试用例的执行发生在所有层(从控制器到DAO / DB),那么覆盖率将更多(超过90%)。 如果您使用的是 Mockito ,则可以模拟最后一层(dao或任何其他层),因为有时DB操作不适用于测试用例。

如果您与DB交互很好,那么您将获得比模拟DAO更好的覆盖范围。

注意:尝试在编写测试用例时覆盖大部分层和功能。