首页 / 知识
人们如何使用Linq to SQL进行单元测试代码
2023-04-14 17:51:00

How are people unit testing code that uses Linq to SQL人们如何对使用Linq到SQL的代码进行单元测试? 更新: Fredrik在他的博客上提供了一个示例解决方案示例,说明如何对linq2sql应用程序进行单元测试。您可以从以下位置下载: http://web.archive.org/web/20120415022448/http://iridescence.no/post/DataContext-Repository-Pattern-Example-Code.aspx 我不仅觉得发布一个示例解决方案很棒,而且还设法提取了所有类的接口,这使设计更加分离。 我的旧帖子:
*我发现这些博客是制作DataContext包装器的一个很好的开始: 它们涵盖几乎相同的主题,除了第一个实现了为表提取接口的方法。第二个虽然更广泛,所以我也将其包括在内。* 迟到了3年,但这是我的方法: https://github.com/lukesampson/LinqToSQL-test-extensions/ 无需编写包装器或做大量的工作,只需将T4模板放在.dbml旁边,您将获得: 两者都将自动使用您已在DBML中配置的映射。 所以你可以做类似的事情
你可以用
要么
包装DataContext,然后模拟包装器。这是最快的方法,需要对测试进行编码,有些人认为这很奇怪。但是有时候,当您具有无法(轻松)嘲笑的依赖项时,这是唯一的方法。 Mattward在The Wayward Web Log上发表了一篇很棒的文章,内容涉及如何模拟可扩展的Linq2Sql数据上下文。签出-MOCKS NIX-SQL DATACONTEXT的可扩展LINQ Linq使测试变得更加容易。 Linq查询在List上的工作与Linq-to-sql上的工作一样好。您可以将Linq换成SQL以获得列表对象,然后进行测试。 通常,您不需要测试使用LINQ to SQL的代码的一部分,但是如果您确实愿意,则可以使用针对服务器查询的相同数据集,并将它们转换为内存中对象,然后对它运行LINQ查询(它将使用Enumerable方法而不是Queryable)。 另一种选择是使用Matt Warren的DataContext的可模拟版本。 您还可以通过调试器(从IQueryable对象)获取LINQ to SQL使用的SQL语句,手动对其进行检查,然后将其包括在自动化测试中。 LINQ to SQL实际上非常适合单元测试,因为它具有根据DBML中定义的内容快速创建数据库的能力。 通过DataContext创建数据库并使之开始为空,可以非常好地测试ORM层。 我在以下博客中对此进行了介绍:http://web.archive.org/web/20090526231317/http://www.aaron-powell.com/blog/may-2008/unit-testing-linq-to-sql。 aspx |
最新内容
相关内容
linux命令防火墙位置?
linux命令防火墙位置?,系统,服务,软件,密码,状态,位置,防火墙,工具,公共,设备,LINUX系统怎么关闭防火墙1、打开linux系统,在linux的桌面的空白linux光标位置命令?
linux光标位置命令?,位置,光标,时间,系统,状态,终端,命令,程序,文件,菜单,linux下编辑文件时如何定位光标到文件末尾1、首先登录到Linux系统。linux命令文件换位置?
linux命令文件换位置?,位置,财务,系统,公司,名称,目录,文件,命令,一致,工作,linux怎么将一个文件移动到另一个目录下1、如果目标文件是到某一linux命令参数位置?
linux命令参数位置?,工作,系统,命令,信息,标准,状态,位置,地址,文件,简介,linux系统常用操作命令linux常用命令有pwd命令、cd命令、ls命令、calinux命令和应用程序?
linux命令和应用程序?,软件,系统,环境,管理,基础,情况,位置,电脑,工具,中心,在linux下如何装应用程序?需要什么命令啊首先从官网下载hdf5,根据linuxsu命令位置?
linuxsu命令位置?,系统,地址,环境,管理,位置,工作,命令,密码,信息,用户,linux切换用户命令1、打开系统中的终端命令框。使用whoami命令查看当Python的Unittest单元测试使用详解
Python的Unittest单元测试使用详解,地址,位置,网站,信息,分析,工具,培训,系统,例子,目标,PytheM是一个Python渗透测试框架。它只能在osnGNU/Lpython脚本之访问网易博客
python脚本之访问网易博客,代码,代理,网络,培训,公司,脚本,测试,都会,原型,变量,这里show一个访问网易博客的python脚本吧,这是去年为了好玩在python的单元测试框架
python的单元测试框架,代码,生态,信息,标准,测试,分析,工具,环境,条款,活跃,1、AutotestAutotest是Google、Redhat、IBM公司联合开发的分布式Python单元测试经验总结
Python单元测试经验总结,名字,项目,报告,工具,代码,培训,测试,文件,覆盖率,都会,python写单元大多数都会用到unittest和mock,测试代码覆盖率都python单元测试框架unittest
python单元测试框架unittest,工作,概念,培训,名字,预期,代码,人员,测试,元器件,框架,unittest是python单元测试框架,又叫做PyUnit。之所以称为Python的Unittest单元测试使用详解
Python的Unittest单元测试使用详解,地址,位置,网站,信息,分析,工具,培训,系统,例子,目标,PytheM是一个Python渗透测试框架。它只能在osnGNU/L