【问题标题】:When should I stub out a type by manually creating a "stub" version, rather than using a mocking framework何时应该通过手动创建“存根”版本而不是使用模拟框架来存根类型
【发布时间】:2010-03-16 10:12:55
【问题描述】:

在任何情况下,手动创建存根类型而不是在测试时使用模拟框架(例如 Rhino Mocks)是有利的。

我们在项目中采用这两种方法。当我看到一长串对象的存根版本时,我的直觉是它会增加维护开销,并将存根的实现从测试点移开。

【问题讨论】:

标签: testing mocking stubs


【解决方案1】:

当您达到存根占用过多维护时间的地步时,就该转向存根/模拟框架了。所以我想你自己已经给出了答案。

目前,为了简单起见,我仍在对当前项目使用存根。我使用存根的类型只有几种,通常只有一个存根,有时两个用于重现错误,但不会更多。

【讨论】:

    【解决方案2】:

    出于自动化单元测试的目的,模拟几乎总是更好的选择。因为它们使用反射来模拟对象,所以当您进行更改时它们会保持最新状态。

    我创建存根的唯一一次是用于集成测试 - 例如,您可以存根 SMS 发送服务,这样您就可以运行一段时间的集成/用户测试,而无需支付发送 SMS 消息的费用(相反,消息是存储以便检查)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-20
      • 1970-01-01
      • 2011-09-08
      • 2021-11-11
      相关资源
      最近更新 更多