【发布时间】:2014-01-23 03:28:53
【问题描述】:
我在最终类 A 中有一个静态方法,它调用 B 类中的非静态方法。
我需要模拟 A 中的静态方法和 B 中的非静态方法来添加单元测试。 PowerMock 有针对这种情况的解决方案吗?
【问题讨论】:
-
mock B中的方法需要什么?您可以让静态方法 A 的模拟完成其执行所需的一切。
标签: unit-testing junit powermock
我在最终类 A 中有一个静态方法,它调用 B 类中的非静态方法。
我需要模拟 A 中的静态方法和 B 中的非静态方法来添加单元测试。 PowerMock 有针对这种情况的解决方案吗?
【问题讨论】:
标签: unit-testing junit powermock
您应该使用 PowerMock 来模拟 A 中的静态方法,使用 Mockito 来模拟 B 中的非静态方法。在 this recent answer 我两者都做:
为了更清楚,对于静态模拟:
对于非静态模拟:
您可能需要在 A 类上配置 B 对象。在此示例中,我在 get 方法中执行此操作。在你的情况下,它可能会有所不同,你必须弄清楚如何去做。
问候。
【讨论】: