当前位置: 首页 > 编程语言 > C#

C#单元测试-生成模拟DataContexts-LINQ--SQL类分享

时间:2023-04-11 01:41:37 C#

C#单元测试-生成模拟DataContexts/LINQ->SQL类我喜欢C#的新世界,我已经开始尝试我的Toy程序,我想开始编写一些单元测试。我的代码目前通过DatabaseDataContext对象(*.dbml文件)使用数据库,为此对象创建模拟的最佳方法是什么?鉴于生成数据库LINQ->SQL代码是多么容易,以及请求是多么常见,我希望VS2010有内置功能来帮助测试。如果我要离开并且必须手动完成,您能告诉我您的首选方法吗?非常感谢,GavinDataContext的问题在于它不是为模拟而设计的。Pex'sMoles(Pex痣?)是一个用于模拟不可模拟对象的免费工具。大致相当于TypeMock。我知道的最好的方法是提取这个对象的接口并用它来创建模拟对象,所以如果你使用linqtosql或EF与数据库对话,或者如果你不与任何数据库对话,这真的无关紧要根本。[免责声明:我在Typemock工作]您可以使用TypemockIsolator创建一个假对象并设置其方法以返回您需要的内容:varfakeContext=Isolate.Fake.Instance();查看这篇关于如何伪造Linq2Sql的文章博客文章:使用隔离器伪造LINQtoSQLDataContext表可能对您有用的东西很少:Moq(发音为“Mock-you”或“Mock”)是唯一开发的模拟库从头开始为.NET充分利用.NET3.5(即Linq表达式树)和C#3.0功能(即lambda表达式),它是最高效、类型安全且重构友好的模拟库。它支持模拟接口和类。它的API非常简单明了,无需先验知识或经验即可对概念进行建模。LINQPad允许您使用现代查询语言LINQ交互式查询数据库。与SQLManagementStudio说再见!LINQPad支持C#3.0和Framework3.5中的所有内容,以及更多:LINQtoObjectsLINQtoSQL和实体框架LINQtoXMLWCFDataServices和SQLAzureLINQtoSQLite和MySQLEnterpriseServerMindscapeLightSpeedORM(甚至是老式的SQL!)以上就是C#学习教程:C#单元测试-生成模拟DataContexts/LINQ->SQL类分享,如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文来自来自网络采集不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处:

最新推荐
猜你喜欢