【发布时间】:2011-02-16 01:51:30
【问题描述】:
用 LINQ to SQL DAL 编写单元测试的好方法是什么?
目前我正在做一些数据库测试,需要创建访问数据库的辅助方法,但我不希望在我的主仓库中使用这些方法。
所以我有两份 DAL,一份在我的主项目中,一份在测试项目中。如果我为数据层创建一个单独的项目,是否更容易管理这些事情?我不确定哪种方法更好。
如果我确实创建了一个数据层项目,我是否也会将我的所有 repo 移动到该项目中?我不确定如何正确设置图层。
谢谢
【问题讨论】:
-
我读到“如果我确实创建了一个数据层项目,我是否会将我的所有 repo 也移动到该项目中?”像您已经在使用以下答案中建议的存储库模式的问题,但显然您还必须在某些测试中进行某种数据库访问?通常这意味着你真的在测试 Linq to SQL,我希望微软的工程师已经这样做了。我建议您避免使用这些方法,并使用 memorycontext 后端测试您的存储库,如 Jason Jones 链接到的文章中所述。
标签: c# asp.net-mvc unit-testing linq-to-sql n-tier-architecture