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 ...
随机推荐
- WANem2.3
http://downloads.sourceforge.net/wanem http://openmaniak.com/wanem_network.php 只能以iso方式运行,安装到硬盘后无法保存 ...
- GitHub上一个不错的开源C#源码(控制台界面开发)
https://github.com/flagbug/FlagConsole 如链接所示
- CultureInfo 类
https://msdn.microsoft.com/zh-cn/library/system.globalization.cultureinfo(VS.80).aspx 区域性名称 区域性标识符 语 ...
- crosswalk-webview
https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview https://cordova.apache.org/doc ...
- cordova-plugin-unionpay
https://github.com/Santino-Wu/cordova-plugin-unionpay
- service对象
Service 对象 提供用于创建服务程序的一组工具 语法 Shell.Service[.property|method] 属性 Description 服务描述,仅限于 Windows 2000 及 ...
- javascript在调试bug的奇淫技巧(Chrome, Firebug, Filddle 调试)
Fiddler Fiddler调式使用知多少(一)深入研究 微信fiddle 微信fiddle Chrome Google Chrome 官方 Chrome - 基础 Chrome - 进阶 Chro ...
- MFC的自定义消息的定义与使用
自定义消息的响应和资源消息的响应有很多类似之处:资源消息的响应是以资源的ID号作为标识的:自定义的消息要自己声明消息ID. 一. 定义: 第一步要声明消息: #define WM_ ...
- 调用Ria Service中方法的各种方式
前端界面后台: using System; using System.Collections.Generic; using System.Linq; using System.Net; using S ...
- 错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法
错误:Unsupported major.minor version 51.0(jdk版本错误)的解决方法 java.lang.UnsupportedClassVersionError: org/ap ...