【发布时间】:2020-09-15 20:50:34
【问题描述】:
我想知道是否可以将 FakeItEasy 与 EF Core 一起使用?我需要围绕 CRUD 操作编写一些单元测试。有人可以提供一些关于我应该使用内存数据库还是 FakeItEasy 的见解吗?对此的任何帮助将不胜感激。谢谢。
【问题讨论】:
-
明确的内存数据库。或者,如果您想测试一些关系数据库功能,那么您可以使用“内存中”SQLite。您不想模拟 EntityFramework,因为它会测试您的实现细节,每次您更改查询时,不改变行为,您都需要重写您的测试。
-
从技术上讲,您可以模拟它(
DbSet<T>中的大多数方法都是虚拟的),但很难设置。在内存数据库中使用,如下所述:stackoverflow.com/a/47554912/98713
标签: .net-core in-memory-database ef-core-2.0 fakeiteasy