【问题标题】:Mockito.doAnswer vs ArgumentCaptor in Unit Tests单元测试中的 Mockito.doAnswer vs ArgumentCaptor
【发布时间】:2021-08-03 21:30:23
【问题描述】:

我是JavaUnit Testing 的新手,并尝试使用ArgumentCaptor 测试一个void 方法。另一方面,我看到还有另一种称为Mockito.doAnswer 的方法也可用于测试void 方法。

在这个场景中:

1.Mockito.doAnswerArgumentCaptor的主要用途是什么?

2.Mockito.doAnswerArgumentCaptor 有什么区别以及它们的优缺点?

【问题讨论】:

    标签: java unit-testing junit mockito junit5


    【解决方案1】:

    它们是完全不同的东西。

    • DoAnswer 用于存根。用于设置您希望在调用特定方法时发生的“虚假”行为。
    • ArgumentCaptor 用于验证。如果您想在测试运行期间检查传递给方法的参数,可以使用它。

    【讨论】:

    • 感谢回复,投了赞成票。测试中的存根到底是什么?
    • 我在第一个要点中确实回答了这个问题。 存根正在设置您希望在调用特定方法时发生的虚假行为。
    • 另一方面,如果我可以使用Mockito.when 执行相同的操作,我是否需要使用DoAnswer
    猜你喜欢
    • 1970-01-01
    • 2022-01-12
    • 2018-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多