unit-testing - Rhino Mocks : Stub & Mocks. 有什么区别

标签 unit-testing mocking stub

我在单元测试中使用 Rhino Mocks。

我想知道 STUBS 和 MOCKS 之间的区别( mocks.Stub<T>()mocks.StrictMock<T>() )。

最佳答案

我想以前有人问过。

大体相同,但有以下不同:

  • Strict Mocks 每次调用时都抛出异常
  • 动态模拟 接受意外调用并仅返回默认值(例如 null)
  • stub 就像动态模拟,但默认情况下打开了“属性行为”。这允许写入和读取字段等属性,但不允许 Stub , Expect也不是 AssertWasCalled在属性上。这种行为也可以在普通 Mock 上配置。但对于 stub ,它是默认值。

  • 由于犀牛改为AAA syntax ,不鼓励使用 Strict Mocks,因为它们使测试代码很难维护。

    类似问题:
  • What are the differences between mocks and stubs on Rhino Mocks?
  • Rhino Mocks - Difference between GenerateStub<T> & GenerateMock<T>

  • 我找不到有关 Rhino 实现的信息,因此我不将此问题标记为重复。

    关于unit-testing - Rhino Mocks : Stub & Mocks. 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7279704/

    相关文章:

    c# - 如何在 Moq 中模拟链式 Linq 方法

    node.js - 如何使用 sinon 模拟导出为函数的 Node 模块的函数/属性?

    ruby - 如何 stub DataMapper 与 RSpec2 的关联?

    mocking - 如果 Minitest 有 stub 和模拟,为什么要使用 mocha gem?

    unit-testing - 错误: No provider for @Attribute ('sampleString' )

    typescript - NestJS - 测试套件无法运行从 'src/article/article.entity' 找不到模块 'comment/comment.entity.ts'

    php - 什么是带有引擎的现代 OOP php 图像处理库?

    Eclipse 中的 Android 单元测试 : "Failed to launch test"

    reactjs - 用 Jest 模拟 React 自定义钩子(Hook)

    java - DAO 需要单独的接口(interface)和实现