Microsoft Visual Studio 2010 VSTS单元测试指南
本来以为很简单的一个问题,今天预计10分钟搞定,结果到下班还没弄出结果,单元测试运行的时候一直处于无反应状态,最后估计可能是我装的2010有问题,结果到家一试果然是有问题,有时软件就是这么神奇。
言归正传,本次作业的目的是让大家熟悉一下开发工具的安装和单元测试工具的使用。VSTS可以实现自动测试,这个说复杂也复杂,说简单也简单,简而言之就是编写一个测试程序的程序,通过输入自动判断输出是否与预想相符,并给出代码覆盖率等等一大堆统计数据,再详细的内容大家自行上网上查,这里只给出如何利用这一功能的简介。
1、工具安装,从Microsoft Visual Studio 2005版开始就已经提供了VSTS工具包,但是建议大家最好安装2010版以上的,原因嘛。。。反正有新的干嘛用旧的,具体安装过程这里就不介绍了,没有什么需要特殊配置的,基本上一直下一步即可。
2、创建一个类,这个类其实就是你要完成的某一个具体功能,如我们的第一个作业,这里我们用书上的例子,建一个类库,其实类库和我们以前用的函数库是一个意思,本身并不是一个可运行的系统,它提供一系列操作,完成相应功能 。

3、点击新建项目,这里我们建一个C#的类库。

4、点击确定后,进入代码编辑界面,这其实就是一个类,可以写下书中代码。
namespace DemoUser
{
public class User
{
public User(string userEmail)
{
m_email = userEmail;
}
private string m_email;
}
}
5、这是一段简单的C#语言编写的类,namespace是命名空间,作用类似于java的包,但是有区别,具体大家自己百度之,这里只给出一个构建函数和一个私有变量。类创建完了,下面就可以为其创建单元测试,所谓单元测试顾名思义就是只测试一个功能函数或方法,可以有很多种方法,这里介绍一种比较方便的,其它方法大家自行查询网上资料。将鼠标定位到User类的构造方法中,然后点右键,弹出下图菜单,单击创建单元测试。

6、在弹出的对话框中选择要测试的函数单击确定。

7、输入新项目的名称,单击创建。

8、这时在左侧或右侧的解决方案资源管理器中就会发现有一个新建项目。

9、大家在UserTest.cs中可以发现系统已经自动为你的User构造方法创建了一个方法,这就是自动测试的含义了,注意这个方法的上面必须要有[Testmethod()]这条语句,并且可以像书中那样增加其它一些内容,具体自己上网查找。自动创建的语句一般是无法实现自动测试的,必须修改其中的一些内容,一般主要方法是初始化输入、创建实例、验证结果,具体如下面语句,按F6键编译。
[TestMethod()]
public void UserConstructorTest()
{
string userEmail = "zhanglsh@163.com"; // 初始化为适当的值
User target = new User(userEmail); //为被测试对象创建用例
Assert.IsTrue(target != null);//比较实际结果和期望结果
}
10、在菜单栏中查找:测试→窗口→测试列表编辑器。

11、如果在菜单中找不到测试这一项说明你未安装相应的工具包,可以重新修复,在测试列表编辑器中选中要测试的项目,然后点击运行或调试选中的测试,即可完成测试操作。

12、一般情况下在几秒后即可出现测试结果,如果你点击运行后发现系统一直在运行中并且没有任何反应,那么恭喜你估计和我一样系统安装的有问题,可以卸载重装一下试试,或者试着找一下解决办法,如果找到了一定告诉我。
希望大家最好能把你的第一个项目作为测试对象,大家成功后一定像我这样把整个过程全部写到博客上,经验就是这么积累的,大家努力吧!
Microsoft Visual Studio 2010 VSTS单元测试指南的更多相关文章
- Microsoft Visual Studio 2013 VSTS单元测试指南
安装vs2013时并未安装VSTS工具包,所以在工具栏:工具->拓展和更新 进行下载安装 vs13已经用了两年了,相比于之前老师推荐的vc6.0感觉要强出很多,刚上手时感觉比较困难,在使用一 ...
- Microsoft Visual Studio 2010中文版编译SQLlite3.7.0版
作为一名教师,没有具体项目的开发,却喜欢尝鲜,不经意间开始追星了. 换了Win7,安装了Microsoft Visual Studio 2010中文版,7月22日SQLite发布了3.7.0版.当然想 ...
- win8 64位操作系统 Microsoft Visual Studio 2010在IIS上调试 “此任务要求应用程序具有提升的权限”等问题
很少在IIS上调试程序,因系统原因,所以不得不在IIS上预览项目和调试项目(因为只能在IIS上预览项目才能看到项目里的数据). 1.附加到进程(注意附加到进程前必须预览项目) 2.选择调试项 需要注意 ...
- Microsoft Visual Studio 2010 遇到了异常,可能是由某个扩展导致的。 转载
问题: 今天打开好久没用的Microsoft Visual Studio 2010 ,刚才创建了一个C++工程,错误就出现了. 只要在VS2010源码编辑器中输入一个字符,它就报错 ":Mi ...
- C++笔记001:Microsoft Visual Studio 2010软件的安装与建立第一个cpp文件
原创笔记,转载请注明出处! 点击[关注],关注也是一种美德~ 我学习C++使用软件为Microsoft Visual Studio 2010. 首先,软件的安装包 链接:https://pan.bai ...
- Microsoft Visual Studio 2010(vs10)安装与使用
安装1.下载软件: 云盘分享http://pan.baidu.com/s/1i4JL9GT 2.安装 打开Microsoft Visual Studio 2010目录,双击setup.exe ,运行 ...
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
原文:http://blog.csdn.net/eclipser1987/article/details/6904301 log4cplus是C++编写的开源的日志系统,功能非常全面,用到自己开发的工 ...
- Microsoft Visual Studio 2010导致系统C盘不断增大问题处理。
一直用Microsoft Visual Studio 2010做开发,发现最近C盘空间是越来越小,一开始以为是IE或者一些系统补丁造成的临时文件,但是使用360,windows优化大师之类的软件都清过 ...
- vs2010下载Microsoft Visual Studio 2010 Express(vs2010中文版下载)速成官方合集正式版
http://www.xiazaiba.com/html/1832.html VB.NET 2010 Express: 2KQT8-HV27P-GTTV9-2WBVV-M7X96VC++ 2010 E ...
随机推荐
- JNI日志调试LOG和中文乱码
添加日志: 1. 增加log支持. Android.mk文件增加LOCAL_LDLIBS += -llog 2. C代码中增加(放在最前面) #include <android/log.h> ...
- python 向上取整ceil 向下取整floor 四舍五入round
#encoding:utf-8 import math #向上取整 http://www.manongjc.com/article/1335.html print "math.ceil--- ...
- [EventBus源码解析] EventBus.post 方法详述
前情概要 上一篇blog我们了解了EventBus中register/unregister的过程,对EventBus如何实现观察者模式有了基本的认识.今天我们来看一下它是如何分发一个特定事件的,即po ...
- iOS开发中的4种数据持久化方式【二、数据库 SQLite3、Core Data 的运用】
在上文,我们介绍了ios开发中的其中2种数据持久化方式:属性列表.归档解档.本节将继续介绍另外2种iOS持久化数据的方法:数据库 SQLite3.Core Data 的运 ...
- String 及其数组的相关问题
由其他类型转String一般用三种方法 方法1:采用 Object.toString()方法 请看下面的例子: Object object = getObject(); System.out.prin ...
- leetcode 125
125. Valid Palindrome Given a string, determine if it is a palindrome, considering only alphanumeric ...
- Form文件夹开发步骤
1.开发完一个Form,测试OK 1.添加Object Groups 操作如下:在同一窗口打开标准的Form APPSTAND.FMB 和我们自己客制的Form,并且选择APPSTAND.FMB的Ob ...
- Git 版本控制 在 WIN 下的一些使用方法
这里记录一些 Git 在 Windows 操作系统下使用方法: 安装完毕后,先让Git 记录自己的名字: $ git config --global user.name "Your Name ...
- 使用GIT进行源码管理——GIT托管服务
虽然GIT是分布式代码管理,但是仍然需要一个集中存储服务以实现团队协作和代码备份的.对于企业的私有代码来说,大多是自建GIT托管服务.但对于开源项目和个人的私有项目,往往是选择一个GIT托管网站,这样 ...
- JavaScript 常用算法
1.排序算法 (1)冒泡排序,冒泡排序其实就是通过比较相邻位置的元素大小,如果左边比右边大,就交换位置,继续比较,实际上就是每轮比较都得出一个最大值,然后通过多伦比较得出. function bubb ...