如何使用 Mockito 在模拟上显示所有调用

时间:2023-05-02
本文介绍了如何使用 Mockito 在模拟上显示所有调用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

限时送ChatGPT账号..

我有一个失败的单元测试,我不确定原因.我希望能够看到在被测系统中发生的模拟上的所有调用.这不是我想要的所有测试的行为,只是我需要快速调整以找出问题所在的测试.

I have a unit test that is failing and I'm unsure why. I want to be able to see all invocations on the mock that occur in the System Under Test. This is not the behavior that I want for all tests always, simply for a test that I need to quickly tweak to be able to figure out what's wrong.

但是,这似乎有点像 hack.是否可以在 Mockito 中本地执行此操作,而无需使用 Thread.currentThread().getStackTrace()?

However, it seems kind of like a hack. Is it possible to do this natively in Mockito, without having to use Thread.currentThread().getStackTrace()?

这不是首选,因为堆栈跟踪包括 Mockito 内部使用的所有其他调用.

This is not preferred, because the stack trace includes all the other invocations used internally by Mockito.

推荐答案

此功能自 Mockito 1.9.5 起内置.只需使用

This feature is builtin since Mockito 1.9.5. Just use

mock(ClassToMock.class, withSettings().verboseLogging())

这篇关于如何使用 Mockito 在模拟上显示所有调用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:Mockito - 如何验证从未调用过模拟 下一篇:用于 int 原语的 Mockito

相关文章