C#单元测试小例子
步骤简略,特别处进行说明。
以VS2015为例。
1、创建一个解决方案方案,如添加一个ConsoleApplication1的解决方案。
2、在解决方案的默认项目中,添加一个Calc类
3、将Calc设置成public,然后添加一个静态方法。
public class Calc
{
public static int ADD(int a, int b)
{
return a + b;
}
}
4、在ADD的方法上,点右键【创建单元测试】,在弹出的对话框中,选择【测试项目名】和【输出文件】,其他内容选默认即可。自动创建一个方法。
5、补全方法并用断言结尾即可。
namespace ConsoleApplication1.Tests
{
[TestClass()]
public class CalcTests
{
[TestMethod()]
public void ADDTest()
{
int a = , b = ;
int c = Calc.ADD(a, b);
Assert.AreEqual(, c);
}
}
}
6、这时,对于我们要测试的方法上方,就有VS自动添加的测试用例运行状况的提要了。

7、以后修改了这个方法,点击运行测试用例即可。
断言包括以下几种,第一个参数是你的期望值(Except),第二个参数是函数返回或影响程序产生的实际值(Actual)
① Assert.AreEqual
主要是验证函数产生的影响值或返回的值跟预期是否一致,这个方法不适合验证返回的数据集以及集合之类的数据,主要针对字符串,数字等等的单一类型,它还有个泛型重载,这个是比较好的,建议多使用,它还有第三个参数,是一个string型的message,基本上不会用到!
例子:Assert.AreEqual<string>("a", "a", "cheng xu yuan");
② Assert.AreNotEqual
没什么要讲的,情况跟上面相反,主要是验证实际值跟期望值不相等的情况!
③ Assert.AreSame
判断实际值跟预期值的类型是否一致!
④ Assert.AreNotSame
跟上面正好相反,测试类型不一致!
⑤ Assert.IsNotNull,Assert.IsNull,Assert.IsTrue,Assert.IsFalse
看这些方法名就知道什么意思了!
⑥ Assert.IsInstanceOfType,Assert.IsNotInstanceOfType
判断指定的对象是否是指定的类型!
⑦ Assert.Fail
迫使断言失败,不管前面的断言是否都成功了,但测试结果是错误的,因为我强制断言失败了!
C#单元测试小例子的更多相关文章
- asp.net mvc 5 单元测试小例子
using System.Collections.Generic; using System.Linq; using Microsoft.VisualStudio.TestTools.UnitTest ...
- 2、Lucene 最简单的使用(小例子)
在了解了Lucene以后,我打算亲手来做一个Lucene的小例子,这个例子只是Lucene最简单的应用:使用Lucene实现标准的英文搜索: 1.下载Lucene 下载Lucene,到Lucene的官 ...
- springmvc入门的第一个小例子
今天我们探讨一下springmvc,由于是初学,所以简单的了解一下 springmvc的流程,后续会持续更新... 由一个小例子来简单的了解一下 springmvc springmvc是spring框 ...
- java即时通信小例子
学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...
- Runtime的几个小例子(含Demo)
一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.) 1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数); [runti ...
- bootstrap 模态 modal 小例子
bootstrap 模态 modal 小例子 <html> <head> <meta charset="utf-8" /> <title ...
- INI配置文件分析小例子
随手写个解析INI配置字符串的小例子 带测试 #include <iostream> #include <map> #include <string> #inclu ...
- JavaScript小例子:复选框全选
JavaScript小例子:复选框全选 这只是一个小例子,很简单,但是这个功能还是很常用的: 实现后效果如图: JavaScript代码: <script type="text/jav ...
- 【zTree】 zTree使用的 小例子
使用zTree树不是第一次了 但是 还是翻阅着之前做的 对照着 使用起来比较方便 这里就把小例子列出来 总结一下使用步骤 这样方便下次使用起来方便一点 使用zTree树的步骤: 1.首先 在 ...
随机推荐
- 如何区分进程和线程ps -eLf
方式 使用ls /proc/pid/task/ 查看线程 使用ps -eLf命令/ps aux -L/ps aux -el 使用pstree 进程和线程 进程是资源分配的最小单位 线程是cpu时间片分 ...
- Spring mvc +ajax 发送邮件
1.前端页面--form表单提交,通过发送按钮的id=“send”定位DOM,触发ajax请求 <form class="form-horizontal" id=" ...
- html转图片网页截屏(三),puppeteer
puppeteer谷歌出品,是一个 Node 库,它提供了一个高级 API 来通过 DevTools 协议控制 Chromium 或 Chrome. 官方github地址:https://github ...
- 欧姆龙 EntherNet/IP(CIP报文格式)
Enthip/IP_ CIP报文格式 测试Demo在文章末尾 注册请求帧: 0x65 0x00 注册请求命令 2byte 0x04,0x00 header长度2byte < 封装头& ...
- 三节课MINI计划第四周
一.任务 二.任务一 (一)梳理产品卖点 (二)策划线上活动 三.任务二 四.周报
- 查询父节点parentNode
示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 <!DOCTYPE htm ...
- eNSP——OSPF的基础配置
原理: 模拟实验: 拓扑图: 实验编址: 1.基本配置 根据实验编址和拓扑图进行基本配置,并测试连通性. 2.部署OSPF网络 首先使用ospf命令创建并运行OSPF,1代表进程号 接着使用area命 ...
- 多年经验【Parallels Desktop14.0.1 永久激活 】版 推荐苹果mac 虚拟机pmg序列号
parallels desktop 14 mac 激活码 parallels 13免费密钥 parallels desktop 14 激活码 很多用 MAC 的朋友发现平时离不开 W ...
- java - redis学习
在学习redis之前,我们首先需要了解一下NoSQL(非关系数据库).非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定. 为什么需要NoSQL? (1) ...
- 人机交互技术 Week 1_人机交互概述
HCI Week 1_Introduction 18-19学年春夏学期选修了计院万华根老师的人机交互技术课程,老师由于知识产权相关原因不能提供课件,故尽可能对课程内容做详尽的课堂笔记以供复习,如有不妥 ...