【问题标题】:How to write Moq unit test for Attach() with Entityframework 6如何使用 Entityframework 6 为 Attach() 编写 Moq 单元测试
【发布时间】:2017-02-03 08:58:35
【问题描述】:

为了更新一条记录,我使用了方法 Attach() 像

            var entity = new Movie() { ID = 1};
            var dbEntity = DbContext.Movies.Attach(entity);
            dbEntity.Genre = "rrrrrrrrrrrrrrrrrrrrrr";
            DbContext.SaveChanges();

如何为上面的函数编写单元测试?谢谢。

【问题讨论】:

  • 听起来您正在为实体框架编写单元测试,而不是您自己的代码。为什么你觉得需要为Attach 方法编写单元测试?
  • 我正在努力确保记录正确更新。
  • 听起来你想做集成测试。在这种情况下,您不想起订量与实体框架相关的任何内容。您需要将单元测试设置为指向一个干净的数据库,运行您的代码,然后使用一些标准的 ADO 代码来查询数据库并查看更新是否有效。但是如果你不相信 Entity Framework 来完成它的工作,你为什么要使用它呢?

标签: mocking entity-framework-6 moq vs-unit-testing-framework


【解决方案1】:

尝试使用两个上下文进行测试。第一个用于创建 mockData,第二个用于运行您要测试的服务

【讨论】:

  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-31
  • 1970-01-01
相关资源
最近更新 更多