【发布时间】:2010-07-20 20:14:40
【问题描述】:
我有基于 Entity Framework 4 的服务类。我想在一个填充了预先生成的示例数据的数据库上测试它们。问题是:我希望测试,无论是通过还是失败,都不要真正接触数据库,以便它可以重新用于其他测试。
因此,我希望 ObjectContext.SaveChanges 假装一切正常,并将更改保存在内存中,但默默地忽略它们在数据源中的实际持久性。这可能吗?
附:我知道存储库模式,但不想在这种情况下使用它。
【问题讨论】:
-
如果您不在数据级别测试它的影响,为什么还要调用 SaveChanges?
-
是的,我也有同样的想法 :-) 可能是传递给服务构造函数的标志。可惜像 DRI 这样的东西不会被测试,但我认为没有办法在不访问数据库的情况下测试它们。
标签: .net unit-testing entity-framework