我正在尝试编写一个涉及使用遗留代码的单元测试。问题是,据我所知,遗留代码使用属性文件中的键/值对来初始化其最终的静态私有成员之一,而我对该属性文件的位置一无所知(整个应用非常庞大)。
所以,在我的测试中,我想做这样的事情(使用 Mockito):
LegacyClass legacyClass = mock(LegacyClass.class);
我最终得到一个ExceptionInInitializationError
表明它找不到某个属性键的结果。
在 LegacyClass.java 中,有:
private static final int LEGACY_PROPERTY =
Integer.parseInt(LegacyPropertyManager.getProp("legacy.property.key"));
有没有办法编写使用这个遗留类的测试,即使它正在寻找的属性键不存在?它可以以某种方式被嘲笑吗?