NUnit和Visual Studio Unit Testing的兼容

为了和TFS更好集成,自动化编译、测试、发布。通常我会在Debug模式下使用NUnit、Release模式下基于Visual Studio Unit Testing。在Debug模式下定义一个条件编译符号:NUNIT,部分Attribute声明为兼容Visual Studio Unit Testing。比如:

1 #if !NUNIT
2 using Microsoft.VisualStudio.TestTools.UnitTesting;
3 #else
4 using NUnit.Framework;
5 using TestClass = NUnit.Framework.TestFixtureAttribute;
6 using TestCleanup = NUnit.Framework.TearDownAttribute;
7 using TestInitialize = NUnit.Framework.SetUpAttribute;
8 using TestMethod = NUnit.Framework.TestAttribute;
9 #endif

NUnit的Assert、ExpectedException和Visual Studio Unit Testing兼容。尽量使用两种测试框架相同的函数,这类问题很容易在两种编译模式下分析出来。NUnit的早期版本有一个RollbackAttribute,通常用于在集成测试下的数据源回滚,改为两者更通用的TransactionScope。

posted @ 2012-08-11 12:04  junchu25  阅读(398)  评论(0编辑  收藏  举报