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的提示,仅支持在共有类或共有方法中支持 ...
随机推荐
- Python初探
Q:DBA是运维数据库,为什么还要懂开发? A: 维护:维护的机器太多了,很多重复的操作,需要开发出工具来实现 监控:所有机器的运行情况和健康状况都需要了解,全盘掌握cup.内存.磁盘.网络流量.数据 ...
- Mac下将ISO写入U盘镜像
在Mac下面如果想做一个启动U盘,确实不如windows下那么方便,Windows下面有ultraiso+王涛,Mac下面测可以用下面的办法. 打开磁盘工具 插入U盘,并在磁盘工具里面找到U盘,把它卸 ...
- tomcat之 Tomcat 7.0.78 单机多实例配置
前言:JDK(JavaDevelopment Kit)是Sun Microsystems针对Java开发员的产品.自从Java推出以来,JDK已经成为使用最广泛的javaSDK. JDK是整个Java ...
- 深入理解 JavaScript 事件循环(一)— event loop
引言 相信所有学过 JavaScript 都知道它是一门单线程的语言,这也就意味着 JS 无法进行多线程编程,但是 JS 当中却有着无处不在的异步概念 .在初期许多人会把异步理解成类似多线程的编程模式 ...
- 一个编程菜鸟的进阶之路(C/C++)
学编程是一条不归路,但我义无反顾.只能往前冲,知道这个过程是痛苦的,所以我开通这个博客,记录自己在编程中遇到的问题和心得,一是希望可以帮助跟我一样遇到同样问题的人,二是把这作为对自己的勉励及回忆:
- commons-logging 结合 log4j, 初始化生命周期 初探
-------commons-logging---------- Log log=LogFactory.getLog(clazz); LogFactory这是个抽象日志工厂,更像个工具? 通过线程上下 ...
- android studio 怎么将项目打包成apk文件
1.Build -> Generate Signed APK...,打开如下窗口 2.假设这里没有打过apk包,点击Create new,窗口如下 这里只要输入几个必要项 Key store p ...
- ListView 介绍
1. 通过继承Activity实现ListView 1.1 在XML布局文件中实现一个ListView <ListView android:layout_width="wrap_con ...
- Spring (3.2.4) 常用jar 包解析
Spring (3.2.4) 常用jar 包解析 基本jar包 spring-aop-3.2.4.RELEASE.jar spring-aspects-3.2.4.RELEASE.jar spring ...
- seajs源码阅读
乘着周日有点时间,阅读一下玉伯大神的源码. seajs的源码写得真的很好,很是佩服,工整美观不愧是大神,造福百姓. 说起seajs不得不说,AMD和CMD的区别. CMD 推崇依赖就近,AMD 推崇 ...