【问题标题】:How to disable a particular mock for a particular test case?如何禁用特定测试用例的特定模拟?
【发布时间】:2012-11-06 06:50:33
【问题描述】:

实际上,我已经为一个类中的特定方法编写了 5 个测试用例。该方法中有一个语句从另一个类调用一个方法,我不想测试那个类,所以我为那个类使用了一个模拟。现在我希望在运行第 5 个测试用例时它不应该访问该模拟类,而是应该访问原始类。怎么做?

提前谢谢...

【问题讨论】:

  • 你使用什么模拟库?你能粘贴一些你有问题的代码吗?我假设您可以通过在测试用例中设置模拟数据轻松实现这一目标。
  • 我正在使用 jmockit 库进行模拟。

标签: java junit eclipse-juno jmockit


【解决方案1】:

在该特定测试的设置中,要么调用被测对象的适当构造函数,要么使用非模拟实例构造一个新的被测对象。另一种选择是使用 Mockito。在 Mockito 中,您可以 spy 一个对象。这将允许您在默认情况下存根方法(模拟它),但在一个测试中让间谍转发到实际实例。

Mockito

Spy Annotation

【讨论】:

    猜你喜欢
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 2019-03-13
    • 1970-01-01
    • 2013-04-05
    • 1970-01-01
    • 1970-01-01
    • 2016-09-11
    相关资源
    最近更新 更多