小编use*_*740的帖子

mockito:如何取消模拟方法?

我有一个JUnit类,使用不同的方法来执行不同的测试.

我使用Mockito在真实实例上创建一个间谍,然后覆盖一些与我执行的实际测试无关的方法.

有没有办法,只是为了清理我以防万一我的测试后运行的其他一些测试也使用相同的实例,可能会执行一个模拟的方法,他们没有要求模拟,取消模拟方法?

说我有一个名为'wareHouseSpy'的间谍对象

说我重写方法isSomethingMissing:

doReturn(false).when(wareHouseSpy).isSomethingMissing()
Run Code Online (Sandbox Code Playgroud)

什么是正确的方式取消覆盖,并使间谍恢复正常,即使下一个isSomethingMissing的调用运行真正的方法?

就像是

doReturn(Mockito.RETURN_REAL_METHOD).when(wareHouseSpy).isSomethingSpy()
Run Code Online (Sandbox Code Playgroud)

或者可能

Mockito.unmock(wareHouseSpy)
Run Code Online (Sandbox Code Playgroud)

谁知道?我在那个地方找不到任何东西

谢谢!

阿萨夫

java testing mockito spy

34
推荐指数
4
解决办法
3万
查看次数

标签 统计

java ×1

mockito ×1

spy ×1

testing ×1