14

我的公司正在寻求标准化隔离框架。我在看MS Stubs(因为 Moles 看起来很酷,我想我会把它放在同一个框架中)。然而,Stubs 还没有完全准备好迎接黄金时段(它在正常功能上仍然有点问题)。

所以现在我正在研究那里还有什么。我看过 Moq 和 Rhino 模拟。在此过程中,我遇到了Richard Banks 所做的精彩比较。在那他展示了NSubstitute。我真的很喜欢我在那里看到的。

但是,在被 MS Stubs 烧了一点之后,我不想押注于 alpha/非生产就绪的隔离框架。

那么,NSubstitute 准备好迎接黄金时段了吗?还是它仍然有点错误?

4

3 回答 3

21

官方 NSubstitute 小组对此进行了讨论。

alpha 标记最初用于指示 API 仍可能发生变化。API 现在已经稳定下来,1.0 版本的大部分出色工作都是文档。您可以从问题日志中获得一些其他计划工作的指示(对于 v1 和 v2;主要是计划的功能) 。

我们一直在一个由 6 名开发人员组成的团队在一个重大项目中使用 NSubstitute,并且对它非常满意。

注意:我在 NSubstitute 工作,所以可能有点偏颇。:)

更新: NSubstitute 1.0 已经发布

于 2010-09-15T21:56:36.183 回答
9

我一直在我的项目中使用 NSubstitute并且我没有遇到任何问题。我选择 NSubstitue 主要是为了尝试一下,因为我喜欢它的语法以及由于它松散而伪造实现是多么容易。因为当时我不确定我是否会继续使用它,所以每当我需要假货时,我都会为我自己的小 DSL 放一个小包装。

另外需要注意的是,我主要在 Linux 上使用 Ubuntu、Mono 和 MonoDevelop 开发 C#,并且在 Mono 2.6.7 运行时下运行它没有任何问题。您可能可以使用任何 2.6.* 运行时,但我还没有尝试过。Mono 2.6.* 运行时等同于 .NET 3.5 Framework。

这就是他们所希望的一切,用他们网站上的短语:它意味着简单、简洁和令人愉快的使用。

于 2010-09-17T00:28:38.923 回答
7

我们使用的是 Rhino Mocks,但我们已经用 NSubstitute 替换了所有的模拟代码。它非常稳定,更易于使用,所需的代码更少,并且是一个小巧、简洁但有效的 API。

强烈推荐它!

于 2011-10-06T09:26:36.867 回答