c# - Visual Studio 2010 单元测试

标签 c# unit-testing visual-studio-2010 testing

我试图在 Visual Studio 2010 单元测试中找出如何保留我在测试期间添加、更新或删除的数据的事务,以便在我的 TestCleanup 上我可以回滚它们的值。

我应该使用什么搜索词来找到更多相关信息?

干杯

保罗

最佳答案

为什么需要回滚更改?您的单元测试是否更新实时数据?如果单元测试编写得当,您就不必在测试更改后进行清理,因为它们更改的数据应该与您的测试隔离。

编辑:

听起来您已经为测试设置了一个数据集,并希望确保该数据集恢复到其原始状态。我更喜欢将设置测试数据作为测试的一部分的做法,但我知道这对于复杂的测试来说可能会变得困难。

如果这是在 ADO.NET 数据源中,您可以启动一个事务,然后在测试结束时回滚该事务。例如:

using (var transaction = db.BeginTransaction())
{
    // Do tests here
}
// The transaction is rolled back when disposed

编辑 2:

如果您没有事务支持,第三种选择是在不会被修改的地方备份您的测试数据,然后在测试结束时恢复该备份。

关于c# - Visual Studio 2010 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3444777/

相关文章:

c++ - 使用 VS2010 创建 C++ 非托管 DLL

c# - ASP.net 创建图像

unit-testing - 类内部的python单元测试方法

Java 断言,与单元测试和异常相比/对比

c# - 为什么我不能将 newtonsoft.Json.dll 引用添加到我的项目中?

visual-studio-2010 - TFS 比较选项

c# - 签名 XML 在 api 门上返回无效签名和错误的签名检查

c# - 如何创建继承 Ellipse 类的子类

c# - 如何 : Determine which character ranges are supported by a font

c# - 使用 NUnit 进行单元测试时获得所需/正确的装配路径