我正在研究制作一个可以在单元测试中使用的可模拟DataContext
。一种方法被描述为here。但是,这种方法的问题在于,对存储库的更改立即生效 - 在调用Commit
(或任何其他等效于SubmitChanges
)之前。嘲笑单元测试中使用的LinqToSql存储库内存
在翻盖侧,包括正确SubmitChanges
行为将涉及重复很多复杂的代码DataContext
,并且将可能导致更多的错误。
模拟内存存储库(不等待SubmitChanges
)使用单元测试是否可行?这通常如何完成?
我认为你是在正确的轨道上。如果您想单元测试您对存储库(而不是存储库本身)所做的操作,则模拟的内存中存储库是一个很好的方法。您还可以使用模拟框架,如[Moq](http://code.google.com/p/moq/)。 –