【发布时间】:2022-01-31 15:59:21
【问题描述】:
我试图找出在 SpringBoot 应用程序中进行单元测试的最佳方法是什么。在上周五之前,我认为最好的方法是测试:
- 具有 mockmvc 和模拟服务的控制器
- 具有模拟存储库的服务
- 带有模拟数据库的存储库
- 主要使用
SpringBootTest进行集成测试。
但后来我看了这个 -Ian Cooper - TDD, Where Did It All Go Wrong,我意识到我的测试是实现测试,我应该只模拟数据库、文件系统、其他系统,而不是我的应用程序。
我想知道我应该怎么做?因为当我自己创建所有对象时,它仍然是“测试实现”,所以我可以将SpringBootTest 与MockBean 一起使用,但这会非常慢。
比我聪明的人可以分享他在这方面的经验或想法吗?
【问题讨论】:
标签: spring-boot unit-testing tdd