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

本文介绍如何在.NET环境中通过System.EnterpriseServices进行事务隔离测试。利用NUnit框架和TransactionOption特性,确保测试过程中对数据库的操作不会产生副作用。文章还详细说明了如何配置密钥文件以支持这些操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先添加引用,在.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 FilesMicrosoft Visual Studio .NET 2003SDKv1.1Bin中的工具sn.exe -k test.snk产生一个密钥,将test.snk拷贝到你的工程文件.sln所在的文件夹中,然后查找AssemblyInfo.cs ,改写AssemblyKeyFile为

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

参考:

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

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8781179/viewspace-924570/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8781179/viewspace-924570/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值