如何在 JUnit 测试执行期间添加 Java 系统属性
我需要为我的 JUnit 测试定义一个系统属性。我尝试了各种步骤将名称/值对传递到 gradle 中。 (我尝试过 Milestone-3 和 4)。 这些方法都不起作用:
- 在 gradle.properties 文件中定义 systemProp.foo=bar
- 在命令行传递 -Dfoo=bar 在
- 命令行传递 -PsystemProp.foo=bar
我没有看到来自“gradle”的附加属性属性”虽然我不确定我应该这样做。但更重要的是,我将 System.properties 转储到静态初始化程序中,但该属性不存在。我需要将系统属性传递给正在运行的测试,以告诉它们正在运行的环境(本地、Jenkins 等)。
I need to define a system property for my JUnit tests. I've tried various steps to pass the name/value pair into gradle. (I've tried Milestone-3 and 4).
None of these approaches worked:
- defining a systemProp.foo=bar in the gradle.properties file
- passing -Dfoo=bar at the command line
- passing -PsystemProp.foo=bar on the command line
I don't see the additional properties from "gradle properties" though I'm not sure I should. But more importantly, I dumped the System.properties in a static initializer and the property is not there. I need to pass System properties to the running tests to tell them what environment (local, Jenkins, etc) they are running in.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
抱歉回答我自己的问题。刚刚此处偶然发现了解决方案:
测试{
系统属性=系统.属性
}
Sorry to answer my own question. Just stumbled upon the solution here:
test {
systemProperties = System.properties
}
您还可以像这样定义单个属性:(
来自此答案)
You can also define individual properties like this:
(From this answer)
对于安卓,你可以使用
with android, you can use