java - 使用 powermock 模拟 System.getenv
问题描述
考虑问题https://stackoverflow.com/a/51980599/7203487。类中的方法中只有一个方法包含需要模拟的 System.getenv。问题是我需要采用 jacoco 代码覆盖率,由于使用 powemock,我得到的覆盖率为 0%。有没有办法在有或没有 powermock 的情况下模拟系统并获得代码覆盖率?
解决方案
查看 JUnit 4 的系统规则,尤其是EnvironmentVariables。
public class EnvironmentVariablesTest {
@Rule
public final EnvironmentVariables environmentVariables = new EnvironmentVariables();
@Test
public void setEnvironmentVariable() {
environmentVariables.set("name", "value");
assertEquals("value", System.getenv("name"));
}
}
推荐阅读
- c# - WPF 中的可重复模式
- javascript - 如何删除 dataTables 按钮的 DIV 类 dt 按钮?
- android - Android Studio 布局文件夹 .xml 文件中缺少类
- java - Java 256 位 AES 加密
- ios - 无法接收静默远程通知。但是重启iphone后可以收到
- r - 只有当另一个变量为真时才可能对一个变量进行平均?
- python - 在 Azure ML Studio 中执行 Python 脚本
- php - WordPress 转义功能的 PHPCS 警告
- javascript - 仅当您在网站上使用检查时才会执行 console.log 吗?
- ajax - 阅读表单输入?