PowerMock测试恢复以前设置的静态变量

时间:2014-09-17 15:37:00

标签: java unit-testing junit powermock

我有一个使用静态变量和模拟的JUnit(4)测试类。静态变量在运行之前设置。 (请参阅下面的原因)但是,当我运行测试用例时,变量被重置为NULL。有没有人对此有解释?这似乎是在实例化powermock之后发生的。

我的理论

我的理论是,PowerMock在新的Java环境中创建了一个新的Java环境,以便它可以隔离模拟的类重定向。我相信这种行为始于最近将PowerMock添加到我的应用程序中的更改。但是,我不确定是否有使用静态变量来实现类目标的替代方法。 (除了动态类创建,这有点不可维护)。

为什么我在测试用例中设置静态变量?

我这样做是因为这是我所知道的在运行时将特定设置设置为测试的最佳选择,而无需借助文件。 JUnitCore :: run接受类对象,但它不能接受类的初始化版本。

0 个答案:

没有答案