vs2015数据驱动的单元测试
今天在做测试的时候boss让我这个菜鸟做vs2015下c#的单元测试,并且给了我参考http://www.cnblogs.com/kingmoon/archive/2011/05/13/2045278.html
但是我现在用的ide是vs2015,一般的单元测试与vs2010相同,在进行到数据驱动的单元测试时,感觉这两个版本ide有很多不同,百度博客也无法得到答案,我又请示boss,boss让我查msdn,菜鸟gawain第一次查看msdn这种高级东西,msdn上面对于单元测试和数据驱动的单元测试讲的都很详细,但是很少有人耐心读完,而且据我发现,官方的做法是基于代码配置的数据驱动,我相信大多数小白在没有图的讲解下很难理解,所以把我的过程总结一下。
对于简单的单元测试部分不做讲解,与上面链接中vs2010的方法完全相同。
我这里只展示“可视化操作结合配置实现数据驱动的单元测试”:
首先创建一个c#项目CUnitTest用于测试,在这里我们选择进行单元测试的方法是Add(int a,int b):
右键解决方案,添加,新建项目
新建单元测试项目
在项目中选择添加新数据源:
点击新建连接:
我这里使用的是excel的数据驱动,所以选择microsoft
odbc数据源,单击确定
选择“使用连接字符串”,点击生成:
选择microsoft
excel driver:
点击下一步
点击浏览
保存为datatest
点击下一步,完成
选择工作簿,在桌面新建名为data2.xls数据源,测试数据如下
选择该工作簿
然后一路确认,到下面步骤,输入计算机管理员密码
测试连接成功,点击确认
一直点击“下一步”,直到完成
此时打开右侧解决方案,测试项目下的app.config
上图是已经配置好的
大家可参考msdn上面的代码配置一下,网址https://msdn.microsoft.com/zh-cn/library/ms243192.aspx
大致步骤为
创建 app.config
文件。
定义自定义配置节。
定义连接字符串。
定义数据源。
使用 DataSourceAttribute 类访问数据源。
代码如下:
<?xmlversion="1.0"encoding="utf-8"
?>
<configuration>
<configSections>
<sectionname="microsoft.visualstudio.testtools"type="Microsoft.VisualStudio.TestTools.UnitTesting.TestConfigurationSection,
Microsoft.VisualStudio.QualityTools.UnitTestFramework,
Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
</configSections>
<connectionStrings>
<addname="CUnitTestTests.Properties.Settings.ConnectionString1"
connectionString="Driver={Microsoft
Excel Driver
(*.xls)};dbq=C:\Users\jiazhen\Desktop\data2.xls;defaultdir=C:\Users\jiazhen\Desktop;driverid=790;exclusive=0;fil=excel
8.0;filedsn=C:\Users\jiazhen\Desktop\data724.dsn;maxbuffersize=2048;maxscanrows=8;pagetimeout=5;readonly=1;safetransactions=0;threads=3;uid=admin;usercommitsync=Yes;pwd=Mjw131023"
providerName="System.Data.Odbc"
/>
</connectionStrings>
<microsoft.visualstudio.testtools>
<dataSources>
<addname="MyExcelDataSource1"connectionString="CUnitTestTests.Properties.Settings.ConnectionString1"dataTableName="Sheet1$"dataAccessMethod="Sequential"/>
</dataSources>
</microsoft.visualstudio.testtools>
</configuration>
注意:configsection中的version与你的.net
framwork版本有关
配置完成后修改测试代码:
这里主要注意我用红笔勾出来的部分即可
然后右键运行测试
测试成功!!!
关于msdn上的我主要参考以下两个网址
演练:使用配置文件定义数据源
https://msdn.microsoft.com/zh-cn/library/ms243192.aspx
如何:创建数据驱动的单元测试
https://msdn.microsoft.com/zh-cn/library/ms182527(v=vs.140).aspx
希望总结对大家有用,有什么问题欢迎评论交流!!
vs2015数据驱动的单元测试的更多相关文章
- 用gtest实现数据驱动的单元测试
//使用gtest进行数据驱动的单元测试 #include <gtest/gtest.h> #include <iostream> #include <vector> ...
- 使用VS2015(c#)进行单元测试,显示测试结果与查看代码覆盖率
创建测试的过程可参考如下链接 http://www.cnblogs.com/libaoquan/p/5296384.html (一)如何使用VS2015查看测试结果 问题描述:使用VS2010执行单元 ...
- VS2015安装及单元测试
今天跟大家分享一下我的VS2015的安装过程以及对单元测试的操作步骤.VS2015是一款非常好用的编程软件,内容很多很广泛,是深受欢迎的一款软件,较之于VC++6.0有着一些好处,对VC6.0++来说 ...
- VS2015 C#的单元测试
1.安装visual studio 2015过程 visual studio 会对windows系统兼容性有很高的要求,没有达到win7 sp1以上的就不给安装,贴一张官方的系统的要求吧. 很不幸的是 ...
- VS2015安装与单元测试
很久之前就听说微软有一款强大的编程软件——Visual Stdio系列,也许是满足于VC和CB的小巧一直都没有去尝试,借这次软件工程的机会终于可以一睹其真容,第一感觉是高大上,一改VC和CB的简洁,看 ...
- VS2015如何创建单元测试并启动调试
1: 添加单元测试 2:打开单元测试类 关键点: 类上加上标记:[TestClass],方法上添加标记:[TestMethod],方法输出使用:Assert.IsNotNull(s,"测试失 ...
- 关于C#程序的单元测试
目录 1.单元测试概念 2.单元测试的原则 3.单元测试简单示例 4.单元测试框架特性标签 5.单元测试中的断言Assert 6.单元测试中验证预期的异常 7.单元测试中针对状态的间接测试 8.单元测 ...
- ABP中单元测试的技巧:Mock和数据驱动
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:虽然ABP为大家提供了测试的脚手架了,不过有些小技巧还是需要自己探索的. ASP.NE ...
- 基于C#的单元测试(VS2015)
这次来联系怎么用VS2015来进行C#代码的单元测试管理,首先,正好上次写了一个C#的WordCount程序,就用它来进行单元测试联系吧. 首先,根据VS2015的提示,仅支持在共有类或共有方法中支持 ...
随机推荐
- gulp报错
这个问题网上搜索到的答案不一定能够解决问题,有可能是node版本问题,需要升级 到最新版就可以了....
- Docker 网络命令
docker network create docker network connect docker network ls docker network rm docker network disc ...
- 关于Eclipse+SVN 开发配置
入职快一个月,学的比较慢,但学的东西很多,受益匪浅.有时候真正意义上,感受到:代码使我快乐,我爱编程. 好久没有开笔,不知道说些什么,也不知道应该说什么. 但总觉得有些东西,很想说出来,不用理会他人的 ...
- STM8程序在IAR中报错 unable to allocate space for sections
Error[Lp011]: section placement failed: unable to allocate space for sections/blocks with a total es ...
- 自动适配H5容器(UIViewView/WKWebView),生成长图,防微信进度条
前段时间撸代码猥琐发育的时候,设计师老王给了张截图某宝APP上一个生成长图分享的功能,正好公司有这个需求,于是在立马开始操练起来!在万能的度娘上搜集整理资料后发现很多文章介绍的方案对WKWebView ...
- MVP架构
一.介绍 MVP(Model View Presenter)架构是从著名的MVC(Model View Controller)架构演变而来的.对于在Android应用中开发就可以视为是MVC架构,布局 ...
- js判断密码强度是否符合
/** 判断密码强度是否符合 */ function check_passwd_intensity(password) { value = $.trim(password); if( value.le ...
- js判断一个数组是否为空
var s = []; if(s.length == 0){ alert('空数组'); }
- 团队开发冲刺2-----2day
冲刺目标: 1.在第一阶段的基础上完成app内部界面设计. 2.逐步完成app内每一部分内容. 3.对app的实现进一步仔细钻研考虑. 4.对app每一部分内容模块化,分工在进一步明确. 5.设计好数 ...
- [leetcode-554-Brick Wall]
There is a brick wall in front of you. The wall is rectangular and has several rows of bricks.The br ...