代码之家  ›  专栏  ›  技术社区  ›  bwerks

主要的.NET 3.0模拟框架是什么?

  •  0
  • bwerks  · 技术社区  · 14 年前

    首先,我喜欢Moq。我希望我能在.NET 3.0中使用它。然而,遗憾的是,我不能,但我仍然想使用mock进行单元测试。另外,我以前也用过犀牛,但我绝对讨厌它。不过,更具描述性的是,这是因为界面感觉笨拙、不直观——这是可以处理的——文档要么可怕,要么不存在——这是不可能的。

    我的问题的本质是,是否有其他适当的文档记录,直观,流畅的界面框架,为C 2.0/.net3.0,或是我是否坚持我的头撞犀牛在没有moq。

    3 回复  |  直到 14 年前
        1
  •  2
  •   Igor Zevaka    14 年前

    我个人区分了三种模拟框架(按照出现的顺序):

    1. 使用字符串方法名ala nmock2/nunit mocks排列act assert(aaa)。很容易上手,但不是强类型。如果方法/属性被重命名,那么测试将在运行时失败。

    2. 记录并重放Ala Rhino嘲笑。我完全同意你的观点,句法很糟糕,我讨厌使用它。它是完全强类型的,因此当重构方法时,测试将保持最新。

    3. aaa使用lambda和表达式。其中包括MOQ、最新的AAA版本的Rhino Mock和TypeMock Isolator。目前为止是最好的语法,但需要.NET 3.5。

    如果.NET 3.5不可用,恐怕您必须选择最不糟糕的Rhino Mocks语法或延迟绑定到方法/属性名。

    微软有自己的隔离框架moles。我自己还没有检查过它,但它应该是相当强大的(即模拟静态方法、非公共方法等)。过来看 here .

        2
  •  2
  •   Community CDub    8 年前

    你看过这个问题吗? what-c-mocking-framework-to-use

        3
  •  0
  •   Steven Evers    14 年前

    努尼特有模拟可用,所以如果你已经用它测试了,那么你应该已经很好地去了。只包括nunit.mocks。

    但它不能满足您流畅的界面需求。