nunit - 使用MSTest和 NUnit?

  显示原文与译文双语对照的内容
109 2

正在阅读MSTest和 NUnit,我无法决定在我的项目中使用什么。我们使用TFS和 VS2010.

我喜欢 MSTest,因为它集成到了 VS2010.持续集成 和代码覆盖。因为它允许用一个漂亮的可读的方式来描述复杂的assert 语句,所以我喜欢 NUnit 。

http://alsagile.com/archive//stop-the-war-between-nunit-and-mstest-make-them.aspx 遇到问题,我向社区询问:是否可以同时使用?

我还想坚持使用MSTest并使用 http://fluentassertions.codeplex.com 插件来给我提供更灵活的方法来制定语句。这是不是最好的选择?

时间:原作者:0个回答

141 0

我个人不喜欢将两个框架混合在一起,这是在文章的中提到的。

在两个测试框架下运行 单元测试的可能条件可能是你不希望或者不能在 持续集成 服务器上安装 Visual Studio 。

只是为了说明,不是定义在的单元测试框架Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll程序集。

在两个框架下,你可以使用预处理器指令命名空间别名来让你的单元测试 运行,你会得到这样一个 Fragment:

#if!NUNIT
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Category = Microsoft.VisualStudio.TestTools.UnitTesting.DescriptionAttribute;
#else
using NUnit.Framework;
using TestInitialize = NUnit.Framework.SetUpAttribute;
using TestContext = System.Object;
using TestProperty = NUnit.Framework.PropertyAttribute;
using TestClass = NUnit.Framework.TestFixtureAttribute;
using TestMethod = NUnit.Framework.TestAttribute;
using TestCleanup = NUnit.Framework.TearDownAttribute;
#endif

我相信我首先通过这个 MSDN杂志文章找到了这个想法。另一个值得讨论的博客文章包括:

对于最后一个问题:流畅的断言项目似乎是一个好的库。如果你喜欢流畅的风格,我没有任何真正的理由,你不应该用它。

原作者:
...