【发布时间】:2021-12-28 16:41:28
【问题描述】:
我见过一些项目,其中在 src/test/resources 下定义了一个独立的 application.properties,其中包含在 src/main/resources 下定义的默认 application.properties 中的所有属性,同时为了测试目的而覆盖属性。这种方法的缺点是每次更改(添加/删除/更新属性)都必须在两个 application.properties 中完成,否则测试可能失败。
另一方面,我看到在src/test/resources 下只定义了一个基于上下文的属性文件的项目,比如application-test.properties 只包含用于测试目的的覆盖属性。这种方法将src/main/resources 下的默认application.properties 和src/test/resources 下的application-test.properties 合并。必须通过@ActiveProfiles 在测试类中激活相应的上下文,例如@ActiveProfiles("test")
您采用的方法是什么,为什么?对此是否有任何最佳做法或建议?
感谢您提前回复。
【问题讨论】:
标签: spring-boot junit5