我正在尝试用Java编写单元测试来检查:
if SystemUtils.IS_OS_UNIX
然后流经其余代码。是否有可能以某种方式包装我的测试以便它可以通过此检查或者是否需要修改该方法?
编辑:使用Apache Commons库中的SystemUtils答案 0 :(得分:2)
为外部库编写单元测试应该不是你的任务。你应该能够假设它们有效。但是,您可能希望模拟该调用以测试不同的方案/操作系统流。
我建议PowerMock来模拟静态值/方法。这是一个非常有用的MockStatic method。
答案 1 :(得分:0)
使用依赖注入。不要让您的班级呼叫SystemUtils.IS_OS_UNIX
,而是将boolean isOsUnix
传递给其构造函数(或者更好的是,enum osType
)。然后单元测试可以传递它喜欢的任何值。