34

如何启用Mockito调试消息?特别是,我想打印带有存根的方法的详细信息when()以及与这些方法的每次交互。

4

2 回答 2

42

Mockito 1.9.0 引入了监听器,现在捆绑了一个详细的记录器:

所以基本上如果你想要简单而愚蠢的日志,只需执行以下操作:

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

有关详细信息,请参阅http://docs.mockito.googlecode.com/hg/latest/org/mockito/MockSettings.html#verboseLogging ()

干杯,

于 2012-08-03T19:57:46.347 回答
13

布莱斯的答案是要走的路,但另一种选择是:

new org.mockito.internal.debugging.MockitoDebuggerImpl().printInvocations(mockedObject);

它只是将在该点之前发生的交互打印到给定选项。不够健壮,但可以解决问题并且在某些情况下可能有用(即使用模拟注释时)

例如,这应该根据MockitoSettings工作

spiedObject = mock(ToMock.class, withSettings().spiedInstance(toMockInstance).verboseLogging())

虽然在 1.9.5 中似乎没有监视任何东西,它只是在嘲笑它。

于 2014-03-19T12:00:01.750 回答