我有一个代码来测试哪个取决于环境变量集的值。 如何模拟系统环境变量的设置? 我不想在我的测试类中执行System.setProperty(),这可能会将变量添加到环境中。
我只是想模拟设置和测试。我该如何嘲笑?
感谢。
答案 0 :(得分:3)
如果您的代码确实依赖于System属性,我建议您重构它以取决于Spring Environment
。然后你可以在Spring测试中使用(使用Spring Boot)@IntegrationTest
,例如(来自the docs):
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = MyApplication.class)
@IntegrationTest({"foo=bar"})
public class SomeIntegrationTests {
// ...
}