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

来源:互联网 发布:unity3d 获取物体坐标 编辑:程序博客网 时间:2024/04/30 21:23

首先添加引用,在.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

原创粉丝点击