使用Visual Studio进行单元测试-Part3
本文主要介绍Visual Studio(2012+)单元测试框架的一些技巧:
- 测试覆盖率的统计
- 测试分组
- 测试Setup/TearDown
- 测试调试
- Exception测试
代码覆盖率的统计
VS下面可以通过下面的方式进行统计:
上面选择AllTests(当然可以选择几个或者几组case单独运行代码覆盖率) 就统计当前Solution下面的所有case的代码覆盖率,统计代码覆盖率其实VS会重新跑一遍所有的case。最终截图如下:
可以很清楚的看到每一个类,每一个方法的代码覆盖率,如果代码覆盖率不是100%,可以点击方法,就能查看那些代码没有被覆盖,如下图:
测试分组
上图:
就是加一个TestCategory attribute,如果case比较多,建议按照业务或者自己的逻辑对case进行分类,这样后期代码修改,可以按照业务只运行部分case。比较方便。
测试Setup/TearDown
Setup/TearDown好像是Nunit的属性名字。VS里面叫法稍微不同,主要是希望在每一个case运行前/运行后执行相关的逻辑。比如在Setup里面可以初始化部分数据,TearDown里面进行数据清理。
测试调试
调试就更加简单了。打断点。。然后调试。
Exception测试
经常程序会根据业务Throw 合理的Exception。这种合理Exception应该怎么测试呢。VS里面也是通过Attribute来实现的。
业务代码:
public class ExceptionDemo
{
public static void ThrowArgumentNullException()
{
throw new ArgumentNullException();
}
}
测试代码:
上面的两个Case,第一个PASS。第二个Fail。
上面的这些小技巧Nunit好像都有(Code coverage除外)。用过Nunit的童鞋这些应该不陌生。
一些简单的心得,抛砖引玉。
使用Visual Studio进行单元测试-Part3的更多相关文章
- 【MVC 4】4.MVC 基本工具(Visual Studio 的单元测试、使用Moq)
作者:[美]Adam Freeman 来源:<精通ASP.NET MVC 4> 3.Visual Studio 的单元测试 有很多.NET单元测试包,其中很多是开源和免费的.本 ...
- [转]Visual Studio 2010 单元测试目录
Visual Studio 2010 单元测试共分七个部分: 普通单元测试.顺序单元测试.压力测试,Generic测试.数据库测试.UI界面测试和Web性能测试. 这个系列的博客实例程序可以在下面的链 ...
- 使用Visual Studio进行单元测试
一.使用Visual Studio进行单元测试的几个建议 1.先写单元测试(依我愚见,应该是接口先行,如果有的话) -> 测试失败 -> 以最小的改动(即编写实际代码)使测试通过(而在VS ...
- Visual Studio 2010 单元测试目录
单元测试的重要性这里我就不多说了,以前大家一直使用NUnit来进行单元测试,其实早在Visual Studio 2005里面,微软就已经集成了一个叫Test的专门测试插件,经过几年的发展,这个工具现在 ...
- Visual Studio 2010 单元测试之一---普通单元测试
原文:Visual Studio 2010 单元测试之一---普通单元测试 本文以Visual Studio 2010为例,来介绍如何在Visual Studio里面进行单元测试. 首先来介绍普通单元 ...
- Visual Studio 2010 单元测试--运行测试并查看代码覆盖率
原文:Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试 ...
- MVC 基本工具(Visual Studio 的单元测试、使用Moq)
3.Visual Studio 的单元测试 有很多.NET单元测试包,其中很多是开源和免费的.本文打算使用 Visual Studio 附带的内建单元测试支持,但其他一些.NET单元测试包也是可用的. ...
- [转]Visual Studio 2010单元测试(2)--运行测试并查看代码覆盖率
Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试并查看 ...
- C# Note31: 如何使用Visual Studio做单元测试
待更! 使用Visual Studio 2013进行单元测试--初级篇 带你玩转Visual Studio——单元测试(C++例)
随机推荐
- mac查看网页时翻页
1 fn + 上下 翻页 2 command + 上下 一下子到文档头和文档尾部
- H5动静分离
1. 动静分离的实现思路(类似于iOS.安卓的思路,后台提供数据接口,前端用ajax异步请求json数据,再把json数据渲染到页面) 动静分离是将网站静态资源(HTML,JavaScript,CSS ...
- Ext部署在本地tomcat下运行例子
我本地用的ext6+,从官网下载好Ext后解压到D盘,然后打开tomcat的server.xml,在Host标签内配置 <Context path="/ext-6.2.0" ...
- pinpoint本地开发——collector
本地启动collector 启动前准备 启动之前,要先确保本地已经可以正常package,install 必须保证install成功,才能进行后续步骤,无法install或者package参考[pin ...
- 七招从办公室政治中取胜 发表于 09 May 2008 ? 领导力培养
办公室政治,对有些人来说是一个禁忌词汇,但在工作场合它却不可回避.简单说来,它就是职场上人与人的不同:观念的差异.利益的冲突 都可以看成是办公室政治的表现.它等于人与人之间的交流和关系.没必要害怕办公 ...
- ubuntu sudo-update出错Encountered a section with no Package: header
Reading package lists... Error! E: Encountered a section with no Package: header E: Problem with Mer ...
- HDU - 1728 逃离迷宫 【BFS】
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1728 思路 BFS 一开始 从开始位置 往四周走 如果能走的话 这个时候 转弯次数都是0 我们的标记不 ...
- HDU - 1003 Max Sum 【DP】
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1003 题意 给出一个序列 要求找出一个和最大的子序列 思路 O(N)的做法 但是要标记 子序列的头部位 ...
- 数组元素的删除 【vector】
7-5 数组元素的删除(5 分) 完成数组元素的移动功能:假设数组有n个元素,输入一个数x,把数组的第x个位置的元素删除了,后面的元素依次前进一个位置. 重复若干次这样的删除,得到最后的结果. 输入格 ...
- Android Theme主题
•android:theme="@android:style/Theme.Dialog" 将一个Activity显示为能话框模式 •android:theme="@and ...






