使用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++例)
随机推荐
- OC常用函数及变量
1.OC常用的的函数及变量 (1)算术函数 [算术函数] 函数名 说明 int rand() 随机数生成.(例)srand(time(nil)); //随机数初期化int val = rand()P; ...
- 我的Android进阶之旅------>Android颜色值(RGB)所支持的四种常见形式
Android中颜色值是通过红(Red).绿(Green).蓝(Blue)三原色,以及一个透明度(Alpha)值来表示的,颜色值总是以井号(#)开头,接下来就是Alpha-Red-Green-Blue ...
- IDEA main方法自动补全(转发:http://blog.csdn.net/zjx86320/article/details/52684601)
最近刚从Eclipse转到IDEA,各种学习丫,IDEA里的main方法是不能自动补齐的,肿么办呢? 1.首先,点击File-->Settings-->Editor-->Live T ...
- python学习-1-列表,元组,字典,集合,文件操作
1. 列表.元组操作 names = ['Alex',"Tenglan",'Eric'] >>> names[0] >>> names[2] & ...
- NeurIPS2018: DropBlock: A regularization method for convolutional networks
NIPS 改名了!改成了neurips了... 深度神经网络在过参数化和使用大量噪声和正则化(如权重衰减和 dropout)进行训练时往往性能很好.dropout 广泛用于全连接层的正则化,但它对卷积 ...
- Advanced GET 9.1 修正汉化版(免注册、页面加载、保存都正常)
http://www.55188.com/viewthread.php?tid=2846679 Advanced GET 9.1 修正汉化版(免注册.页面加载.保存都正常) 网上流传的很多GET9.1 ...
- web开发工具网站
配色 http://peise.net/tools/web/ http://retinaicon.com/ http://flattyshadow.com/ 免费图片网站 https: ...
- vue页面性能优化方案
个人在项目中用到的页面性能优化的方式总结. 一.均衡页面加载文件的大小和数量 1.项目中小图片图片转base64,通过工具如webpack进行图片压缩,文件进行压缩混淆等 2.vue-router 懒 ...
- 高性能javascript学习总结(3)--数据访问
在 JavaScript 中,数据存储位置可以对代码整体性能产生重要影响.有四种数据访问类型:直接量,变量,数组项,对象成员. 直接量仅仅代表自己,而不存储于特定位置. JavaScr ...
- MySQL与Oracle的语法区别详细对比
MySQL与Oracle的语法区别详细对比 Oracle和mysql的一些简单命令对比在本文中将会涉及到很多的实例,感兴趣的你不妨学习一下,就当巩固自己的知识了 Oracle和mysql的一些简单 ...






