icy*_*sor 5 junit intellij-idea gradle
我得到了一个依赖于Java SystemProperty的JUnit测试(更准确地说,它使用的库依赖于它).我想从IntelliJ开始JUnit测试.因此,我编辑了运行配置并添加了诸如"-DpropertyName = value"之类的VM选项.IntelliJ然后用这样的东西开始gradle:
gradle cleanTest test --tests com.example.Test -DpropertyName=value
Run Code Online (Sandbox Code Playgroud)
当我使用System.getProperty()/ getProperties()从我的Test中检查时,该属性未被传递,因此为null.
如何将属性传递给JunitTest?
事实证明,IntelliJ只能将这些JVM选项传递给JVM gradle运行,并且gradle不会将这些选项传递给测试.要为将运行测试的JVM指定属性,请编辑该build.gradle文件并添加:
test {
systemProperty 'propertyName', 'value'
}
Run Code Online (Sandbox Code Playgroud)
或者,相反,添加
test.jvmArgs System.getProperty("test.jvmArgs").split(" ")
Run Code Online (Sandbox Code Playgroud)
到build.gradle文件并修改您的运行配置VM选项是类似的
-Dtest.jvmArgs="-DpropertyName=value -Dprop2=value2"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1935 次 |
| 最近记录: |