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的提示,仅支持在共有类或共有方法中支持 ...
随机推荐
- 如何实现windows命令提示符的tab补全
1:使用win+r打开 运行 控制台 2:输入 regedit 打开注册表 3:进入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\Co ...
- SDWebImage源码阅读-第三篇
这一篇讲讲不常用的一些方法. 1 sd_setImageWithPreviousCachedImageWithURL: placeholderImage: options: progress: com ...
- Spring学习(22)--- AOP之Advice应用(下)
(六)Advice parameters(advice带参数的情况) 例子: 修改MyAspect(添加around_init方法): package com.aop.schema; import o ...
- node.js零基础详细教程(6):mongodb数据库操作
第六章 建议学习时间4小时 课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑. ...
- CVE-2017-8464远程命令执行漏洞(震网漏洞)复现
前言 2017年6月13日,微软官方发布编号为CVE-2017-8464的漏洞公告,官方介绍Windows系统在解析快捷方式时存在远程执行任意代码的高危漏洞,黑客可以通过U盘.网络共享等途径触发漏洞, ...
- tomcat之 JDK8.0安装、tomcat-8.5.15安装
前言:JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品.自从Java推出以来,JDK已经成为使用最广泛的Java SDK. JDK是整个Ja ...
- 格式化输出和printf命令
GNU版本的printf命令用来格式化输出,效果类似与C语言的printf函数.2.x以上版本的Bash内建的printf命令和e/usr/bin下的printf命令使用方法一样. 例子:$print ...
- vue全家桶(Vue+Vue-router+Vuex+axios)(Vue+webpack项目实战系列之二)
Vue有多优秀搭配全家桶做项目有多好之类的咱就不谈了,直奔主题. 一.Vue 系列一已经用vue-cli搭建了Vue项目,此处就不赘述了. 二.Vue-router Vue的路由,先献上文档(http ...
- printf和scanf整理(后续填补)
scanf和printf头文件:<stdio.h> 1.%d.%3d.%03d.%-3d区分 %d:以十进制形式输出整数(int) %3d:指定宽度为3,不足的左边补空格 %03d:一种左 ...
- 【2017-06-27】Js中获取地址栏参数、Js中字符串截取
一.Js中获取地址栏参数 //从地址栏获取想要的参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" ...