ege*_*ari 7 java junit spring intellij-idea maven
在以前版本的Idea中,如果我检查了"开发"或"生产"Maven配置文件,每当我运行单元测试时,IntelliJ IDEA实际上并没有使用这些配置文件.相反,它没有使用它们中的任何一个.
由于我正在开发一个基于Spring的应用程序,我使用3个配置文件来配置各种各样的东西,但主要是我的applicationContext.xml.每当没有使用配置文件时,因为属性语法是相同的,所以applicationContext.properties当没有使用Maven配置文件替换我的应用程序上下文中的值时,Spring会方便地回退.
但是对于较新版本的IntelliJ,这种后备机制不再发生.如果在IntelliJ IDEA的Maven选项卡下检查'production',那么只要我运行单元测试,IDEA就会实际使用该配置文件.这意味着在我运行单元测试之前,我必须始终确保清理项目并检查我选择的Maven配置文件,当我需要在"test"和"test"之间来回切换时,这会增加很多开销. "开发"......并且上帝禁止我的dbunit测试开始覆盖"开发"数据库,因为实际上选择了错误的配置文件!
现在,我是一个非常懒惰的开发人员.我喜欢我的IDE是足够聪明,每当我跑我的单元测试总是使用"测试"的个人资料,即使"生产"或"开发"被选中.我如何告诉IntelliJ IDEA这样做?它曾经在旧版本的IDEA中做到这一点,我希望得到相同的行为 - 它适用于我.
在默认测试配置(对我来说是 junit)中,您可以设置一个环境变量,例如 RUNNING_TESTS=true。然后,当该变量存在时,您可以自动激活您的测试配置文件(sonatype maven 文档页面上有对此的引用)。
| 归档时间: |
|
| 查看次数: |
2634 次 |
| 最近记录: |