2010-07-28 123 views
0

我一直在读斯科特谷的帖子上的代码的第一个设计与ASP.Net MVC 2.0和EF4这里:编写单元测试在ASP.Net MVC与代码优先和EF4和SQL CE4

http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx

在这篇文章中,他将SQL CE4数据库用于开发和'种子'测试数据。

我的问题与测试有关。人们普遍认为,我们不应该针对速度等原因对数据库进行测试,必须编写“清理”代码并消除数据库本身的错误。

如果我们在后文中使用SQL CE4,我们可以非常快速地重新生成数据并使用数据进行播种,并且数据库是基于文件的,并且位于我们的解决方案中。

直接对该数据库进行测试仍然不好吗?

感谢

戴维

回答

1

我仍然会针对测试的内存存储库(或模拟如果这是测试的首选方法),而不是测试SQL数据库CE4。虽然与完整的SQL服务器相比,发生错误的可能性较小,但您仍然认为在任何给定时间Windows都不会访问数据库文件。当时访问sql CE的任何错误都会导致所有测试失败。在内存中,存储库存在问题的可能性要低得多。

+0

是的,我认为当我第一次阅读这本书时,我得到了错误的结尾。 Im记忆它是。 – davy 2010-08-04 11:43:26