Java 如何启用Mockito调试消息?
如何启用调试消息?特别是,我想打印以Java 如何启用Mockito调试消息?,java,debugging,testing,mockito,Java,Debugging,Testing,Mockito,如何启用调试消息?特别是,我想打印以when()为存根的方法的详细信息以及与这些方法的每次交互。Mockito 1.9.0引入了侦听器,现在捆绑了一个详细的记录器: 因此,基本上,如果您想要简单而愚蠢的日志,只需执行以下操作: List mockWithLogger = mock(List.class, withSettings().verboseLogging()); 有关更多信息,请参见() 干杯,答案是正确的,但另一个选择是: new org.mockito.internal.debug
when()
为存根的方法的详细信息以及与这些方法的每次交互。Mockito 1.9.0引入了侦听器,现在捆绑了一个详细的记录器:
因此,基本上,如果您想要简单而愚蠢的日志,只需执行以下操作:
List mockWithLogger = mock(List.class, withSettings().verboseLogging());
有关更多信息,请参见()
干杯,答案是正确的,但另一个选择是:
new org.mockito.internal.debugging.MockitoDebuggerImpl().printInvocations(mockedObject);
它只是将在该点之前发生的交互打印到给定选项。虽然不够健壮,但确实有效,并且在某些情况下可能有用(例如,在使用模拟注释时)
例如,这应该根据
虽然在1.9.5中似乎没有发现任何东西,但它只是在嘲弄它。我更喜欢你的答案-它提供了更多的细节,调试器确实帮助了我。
MockitoDebuggerImpl
现在已被弃用。相反,请使用:Mockito.mockingDetails(myMock).printInvocations()
是否可以使用@Mock注释字段设置详细日志记录?@DanielBrotherston否,但可以使用常规的Mock(type,withSettings().verboseLogging())初始化字段
。它将由InjectMocks
spiedObject = mock(ToMock.class, withSettings().spiedInstance(toMockInstance).verboseLogging())