- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在我关于回滚 EF4 事务的研究中,似乎每个人都提到了 this blog post或提供类似的解释。在我的场景中,我想在单元测试场景中执行此操作,我想回滚我在单元测试上下文中所做的几乎所有事情,以防止更新数据库中的数据(是的,我们将增加计数器,但没关系).为了做到这一点,最好遵循以下计划吗?我是否遗漏了一些概念或其他与此相关的主要内容(除了我的 SetupMyTest
和 PerformMyTest
函数将不会真正存在)?
[TestMethod]
public void Foo
{
using (var ts = new TransactionScope())
{
// Arrange
SetupMyTest(context);
// Act
PerformMyTest(context);
var numberOfChanges = context.SaveChanges(SaveOptions.AcceptAllChangesAfterSave);
// if there's an issue, chances are that an exception has been thrown by now.
// Assert
Assert.IsTrue(numberOfChanges > 0, "Failed to _____");
// transaction will rollback because we do not ever call Complete on it
}
}
最佳答案
我们为此使用 TransactionScope。
private TransactionScope transScope;
#region Additional test attributes
//
// Use TestInitialize to run code before running each test
[TestInitialize()]
public void MyTestInitialize()
{
transScope = new TransactionScope();
}
// Use TestCleanup to run code after each test has run
[TestCleanup()]
public void MyTestCleanup()
{
transScope.Dispose();
}
这将回滚在任何测试中所做的任何更改。
关于c# - 如何在 EF4 中回滚单元测试拆解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2686454/
我最低限度地使用 pytest 作为针对工作中各种 API 产品的大型自动化集成测试的通用测试运行器,并且我一直在尝试寻找一个同样通用的拆卸函数示例,该函数在任何测试完成时运行,无论成功或失败。 我的
我不需要编码器,我已经有了 XML 文件。所以我在关注this guide查看如何解码 CDATA 中的内容。但是,我发现,如果我跳过 main 中的编码部分而只执行解码部分,它似乎不起作用。所以我的
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: How do I stop name-mangling of my DLL's exported funct
产品岗在很多公司就是螺丝钉样的存在。不仅JAVA、UI、Axure得手到擒来,文案、手册、幻灯片还要充满情怀,连运营活动都似乎是产品的分内工作了 T_T 那么作为初级产品要怎么运营好一
我是 Python 新手。我有一个单例装饰器定义为: def singleton(cls): instances = {} def getinstance(): if
我正在努力构建基于 ggplot 对象的双轴图。根据巴蒂斯特的建议,我已将问题分解为更小的部分。目前的问题是: 如何从grobs中删除所有数据,同时保留轴、轴标签、轴刻度线和网格线?我的意思是与 ge
我有一个数据集,我在其中存储不同类/子类型的副本(不确定如何调用它),然后存储每个类/子类型的属性。本质上,有 5 个子类型/类,每个子类型/类有 4 个重复,以及测量的 100 个属性。 是否有像
我是一名优秀的程序员,十分优秀!