5

在我的项目中,我遵循存储库模式以便轻松地对我的 ASP.NET MVC 应用程序进行单元测试。这使我可以轻松地模拟对象。

但是,我根本没有通过这种方式测试存储库逻辑。

例如,请参阅以下博客文章:

如何在 ASP.NET MVC 上使用通用存储库并通过模拟对它们进行单元测试

这就是我所做的以及我如何测试我的 ASP.NET MVC 应用程序。

您认为测试使用DbContext类来获取数据的存储库的最佳方法是什么?

  • 直接从数据库获取数据?(我认为这将是最糟糕的,但我想知道你的想法)
  • 我应该创建一个假数据库并用虚拟数据填充它并指向 EF 以连接该数据库吗?

以及您可能建议的任何其他方法。

编辑:

我在这里使用 EF 4.2。

4

1 回答 1

7

存储库是数据库的入口点,因此测试它的唯一方法是使用集成测试并在测试数据库上工作。您可以使用事务测试,其中每个测试都将设置事务并在测试结束时回滚,以保持所有测试的测试数据相同。

于 2011-12-26T12:07:09.113 回答