将NUnit迁移/升级到Team系统

时间:2009-04-02 07:29:59

标签: c# unit-testing nunit automated-tests

我们正在开发一个C#windows应用程序,该应用程序正在从 .Net 1.1 升级到 3.5 。 该应用程序使用 NUnit 进行自动化测试,然后我们将其更改为 Team System 2008

  • 在我看来,NUnit使用 类似的属性和代码 的断言
  • 升级 /的最佳方式是什么? 迁移此代码,是他们的任何代码 程序 避免

2 个答案:

答案 0 :(得分:2)

以下是属性从NUnit映射到MSTest

的方式
[TestFixture] -> [TestClass]
[Test] -> [TestMethod]
[SetUp] -> [TestInitialize]
[TearDown] -> [TestCleanup]
[TestFixtureSetUp] -> [ClassInitialize]
[TestFixtureTearDown] -> [ClassCleanup]

您可以考虑添加类似

的内容
using TestClassAttribute = NUnit.Framework.TestFixtureAttribute;
using TestAttribute = NUnit.Framework.TestMethodAttribute;

到测试类的顶部。

答案 1 :(得分:2)

主要是,在测试框架之间进行转换是“[Ctrl] + H”(替换所有)作业。然而...

我认为“升级”这个词可能令人困惑。我已经使用过两者,并且在许多方面NUnit在MSTest上都处于领先地位。 MSTest的最大优势在于(IMO)IDE中的团队覆盖集成 - 但您可以通过TestDriven.NET(现在使用测试) - >团队覆盖范围,通过现有的NUnit测试获得 )。

MSTest需要注意的事项:

  • 它需要一个解决方案文件来保存testrunco​​nfig等
  • 您需要添加额外的属性(或testrunco​​nfig中的条目)以将文件部署到测试文件夹(它不只是使用输出“bin”文件夹)
  • instrumentation需要特殊配置