我需要知道在单元测试中仅测试spring boot应用程序中的restControllers是否足够或者更好地独立测试所有类?
答案 0 :(得分:0)
没有简单而正确的答案。您应该自己决定。
首先值得一提的两件事:
我个人的喜好是通过集成测试(覆盖服务和数据库层)覆盖“幸福之路”。
然后,我将通过单元测试介绍具有复杂逻辑的类(并非所有类)。
在我的实践中,大多数应用程序都非常简单,我发现我有很多集成测试,而单元测试却很少。
答案 1 :(得分:0)
Max Fariskov是正确的,我可以补充两句话。
单元测试在您经常启动时正常工作。后 每个编译通常足够了:)。这就是为什么每个单元测试都必须占用部分功能的原因。测试整个控制器是一项过于复杂的任务。
单元测试速度很快,但是集成测试则复杂而复杂。因此,将它们分成不同的组是一个好主意。经常执行单元测试,仅在必要时执行集成测试。
我正在使用“个人资料”:
创建两个空接口。例如:
公共接口UnitTest {} 公共接口IntegrationTest {}
用适当的注释标记测试类
@Category({IntegrationTest.class}) 公共类MySlowAndComplexServiceTest {}
@Category({UnitTest.class}) 公共类MyFastServiceTest {}
单元测试 真正 Maven-surefire-插件 2.19.1 UnitTest.class 整合测试 假 Maven-surefire-插件 2.19.1 IntegrationTest.class,UnitTest.class
完成了。 默认情况下,您的单元测试将被执行,并且您可以随时打开“ integrationTests”配置文件来激活您的集成测试。