c#中使用nunit支持数据库单元测试

首先添加引用,在.net组件中加入System. Enterprise Services.

测试程序源代码:

using System ;

using NUnit . Framework ;

using System . EnterpriseServices ;

namespace TransactionTesting

{

[ TestFixture ]

[ Transaction ( TransactionOption . Required )]

public class DatabaseFixture : ServicedComponent

{

[ TearDown ]

public void TransactionTearDown ()

{

if ( ContextUtil . IsInTransaction )

{

ContextUtil . SetAbort ();

}

}

}

}

使用C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Bin中的工具sn.exe -k test.snk产生一个密钥,将test.snk拷贝到你的工程文件.sln所在的文件夹中,然后查找AssemblyInfo.cs ,改写 AssemblyKeyFile为

[ assembly : AssemblyKeyFile ( @"..\..\test.snk" )],按照上面设置后的程序,对数据的增删改并不真正改变数据库中的内容,避免了垃圾数据

参考:

http://weblogs.asp.net/rosherove/articles/dbunittesting.aspx

Published At
Categories with Web编程
Tagged with
comments powered by Disqus