由于gradle 4.6支持JUnit 5,具有以下配置。
test {
useJUnitPlatform()
}
似乎改变testinstance生命周期的旧方法不起作用。
junitPlatform {
// ...
configurationParameter 'junit.jupiter.conditions.deactivate', '*'
configurationParameters([
'junit.jupiter.extensions.autodetection.enabled': 'true',
'junit.jupiter.testinstance.lifecycle.default': 'per_class'
])
// ...
}
https://junit.org/junit5/docs/current/user-guide/#running-tests-build-gradle-config-params
如何在Gradle 4.6+中将JUnit 5测试实例生命周期切换为“每类”?
除了使用eee's answer中描述的系统属性外,还可以使用junit-platform.properties
文件。 junit-platform.properties
文件可以放在src/test/resources
。
JUnit-platform.properties
junit.jupiter.testinstance.lifecycle.default = per_class
以下是JUnit团队的答案。 https://twitter.com/junitteam/status/970014414891094018
在任务中将其设置为systemProperty,或将其设置在junit-platform.properties文件中。后者是更强大的机制,因为它也将在IDE中应用。
您可以使用系统属性执行此操作:
test {
useJUnitPlatform {
// ...
systemProperty 'junit.jupiter.testinstance.lifecycle.default', 'per_class'
// ...
}
}