如何调试mockito mocks / stubs / matchers?

时间:2016-04-26 15:14:46

标签: java unit-testing testing junit mockito

在使用mockito的正常测试开发期间,我(以及其他许多人肯定)会遇到很多情况,我们的时间(service.doSomething(paramMatcher,paramMatcher2,...)。thenReturn(...)让我发疯。所以列表,vargars,null值等之间可能存在许多组合。通常只需要花费数小时才能使公式正确,即使我放弃了,只需使用thenAnswer(手动匹配)的任何()。

如何调试mockito的参数匹配机制?为了增加难度,我使用Mockito runner运行我的测试,这意味着我使用注释来初始化并自动注入我的模拟服务。

1 个答案:

答案 0 :(得分:12)

您可以在Mocked对象上启用详细日志记录:

List mockWithLogger = mock(List.class, withSettings().verboseLogging())

这可以为您提供更多信息,以了解相互作用。

http://docs.mockito.googlecode.com/hg/latest/org/mockito/MockSettings.html#verboseLogging