单元测试中Assert类的用法

Assert类所在的命名空间为Microsoft.VisualStudio.TestTools.UnitTesting

在工程文件中只要引用Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll就可以使用了,

在这里我会举例说明Assert里面的一些主要的静态成员。

1、 AreEqual:方法被重载了N多次,主要功能是判断两个值是否相等;如果两个值不相等,则测试失败。

2、AreNotEqual:方法被重载了N多次,主要功能是判断两个值是否不相等;如果两个值相等,则测试失败。

3、 AreNotSame:引用的对象是否不相同;如果两个输入内容引用相同的对象,则测试失败.

4、AreSame:引用的对象是否相同;如果两个输入内容引用不相同的对象,则测试失败.

5、Fail:断言失败。

6、Inconclusive:表示无法证明为 true 或 false 的测试结果

7、IsFalse:指定的条件是否为  false;如果该条件为  true,则测试失败。

8、 IsTrue:指定的条件是否为  true;如果该条件为  false,则测试失败

9、IsInstanceofType:测试指定的对象是否为所需类型的实例;如果所需的实例不在该对象的继承层次结构中,则测试失败

10、IsNotInstanceofType: 测试指定的对象是否为所需类型的实例;如果所需的实例在该对象的继承层次结构中,则测试失败

11、IsNull:测试指定的对象是否为非空

12、IsNotNull:测试指定的对象是否为非空具个例子来说明上面所写的。(先创一个测试工程) 

 

using Microsoft.VisualStudio.TestTools.UnitTesting; 
using System; 
using System.Text; 
using System.Collections.Generic; 
namespace Temp_Test 
{ /// <summary> ///这是 TempDll.TempDll 的测试类,旨在 ///包含所有 TempDll.TempDll 单元测试 ///</summary> 
     [TestClass()] public class TempDllTest { private TestContext testContextInstance; /// <summary> ///获取或设置测试上下文,上下文提供 ///有关当前测试运行及其功能的信息。 ///</summary> public TestContext TestContext { get { return testContextInstance; } set { testContextInstance = value; } } #region 附加测试属性 //  //编写测试时,可使用以下附加属性: // //使用 ClassInitialize 在运行类中的第一个测试前先运行代码 // //[ClassInitialize()] //public static void MyClassInitialize(TestContext testContext) //{ //} // //使用 ClassCleanup 在运行完类中的所有测试后再运行代码 // //[ClassCleanup()] //public static void MyClassCleanup() //{ //} // //使用 TestInitialize 在运行每个测试前先运行代码 // //[TestInitialize()] //public void MyTestInitialize() //{ //} // //使用 TestCleanup 在运行完每个测试后运行代码 // //[TestCleanup()] //public void MyTestCleanup() //{ //} // #endregion /// <summary> ///测试方法入口处 ///</summary> 
         [TestMethod()] public void Test() { System.IO.FileInfo file = null; System.IO.FileInfo file1 = file; System.IO.DirectoryInfo dir = null; string tempTrue = "T"; string tempFalse = "F"; //Assert.AreEqual(tempTrue, tempFalse, "两个对想不相同,测试失败"); //Assert.AreNotSame(file1, tempTrue, "两个引入的对象是同一个,测试失败"); //Assert.AreSame(file1, file, "两个引入的对象是不相同的"); //Assert.Fail("不管是什么,直接宣布测试失败"); //Assert.Inconclusive("同Fail差不多,但不是失败,只是测试不能通过"); //Assert.IsFalse(true, "如果是真,表示测试失败"); //Assert.IsTrue(false,"如果为假,请示测试失败"); //Assert.IsInstanceOfType(true,tempTrue.GetType(),"类型不相同,测试失败"); //Assert.IsNull(tempFalse,"不是空所以测试失败");            
         } } }

 

Assert类所在的命名空间为

Microsoft.VisualStudio.TestTools.UnitTesting 在工程文件中只要引用Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll就可以使用了,

 

在这里我会举例说明Assert里面的一些主要的静态成员。1、             AreEqual:方法被重载了N多次,主要功能是判断两个值是否相等;如果两个值不相等,则测试失败。2、             AreNotEqual:方法被重载了N多次,主要功能是判断两个值是否不相等;如果两个值相等,则测试失败。3、             AreNotSame:引用的对象是否不相同;如果两个输入内容引用相同的对象,则测试失败.4、             AreSame:引用的对象是否相同;如果两个输入内容引用不相同的对象,则测试失败.5、             Fail:断言失败。6、             Inconclusive:表示无法证明为 true 或 false 的测试结果7、             IsFalse:指定的条件是否为  false;如果该条件为  true,则测试失败。8、             IsTrue:指定的条件是否为  true;如果该条件为  false,则测试失败9、             IsInstanceofType:测试指定的对象是否为所需类型的实例;如果所需的实例不在该对象的继承层次结构中,则测试失败10、        IsNotInstanceofType: 测试指定的对象是否为所需类型的实例;如果所需的实例在该对象的继承层次结构中,则测试失败11、        IsNull:测试指定的对象是否为非空12、        IsNotNull:测试指定的对象是否为非空具个例子来说明上面所写的。(先创一个测试工程) 

转载于:https://www.cnblogs.com/shy1766IT/p/5574155.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/374550.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CocoaPods安装使用

$ gem sources --remove https://rubygems.org/ //等有反应之后再敲入以下命令 $ gem sources -a http://ruby.taobao.org/*** CURRENT SOURCES ***http://ruby.taobao.org/ //出现这个说明安装正确$ sudo gem install cocoapods 安装cocoaPods到项目的路径下 $ touch Pod…

303. 区域和检索 - 数组不可变(数组前缀和知识应用)

给定一个整数数组 nums&#xff0c;处理以下类型的多个查询: 计算索引 left 和 right &#xff08;包含 left 和 right&#xff09;之间的 nums 元素的 和 &#xff0c;其中 left < right 实现 NumArray 类&#xff1a; NumArray(int[] nums) 使用数组 nums 初始化对象 in…

pat1049. Counting Ones (30)

1049. Counting Ones (30) 时间限制10 ms内存限制65536 kB代码长度限制16000 B判题程序Standard作者CHEN, YueThe task is simple: given any positive integer N, you are supposed to count the total number of 1s in the decimal form of the integers from 1 to N. For ex…

加油站会员管理系统源码php_加油站使用会员管理系统,如何解决行业瓶颈?

随着人们生活条件的不断改善&#xff0c;基本上家家户户都有了私家车辆&#xff0c;这对于加油站而言&#xff0c;覆盖的客户量也逐渐增多。现在很多加油站还是处于比较传统的收银模式和会员营销管理模式&#xff0c;收银效率低&#xff0c;客户得不到全方面的管理。尤其是在高…

专2-第二课 Eclipse开发环境搭建

2.1下载Eclipse 2.2 安装C/C版本的Eclipse 2.3 安装JDT插件开发Java程序 2.4 使用Eclipse开发驱动程序 既然安装了eclipse来进行驱动学习&#xff0c;那么我们就先来试试看eclipse开发驱动的大致流程。这里以Linux设备驱动作为示列给读者展示整个流程&#xff0c;Android底层的…

使用JAXB从XSD生成XML

这是最初由JCG合作伙伴 Experiences Unlimited的Mohamed Sanaulla发表的帖子。 Mohamed解释了如何使用JAXB从给定的XSD生成XML 。 &#xff08;注意&#xff1a;对原始帖子进行了少量编辑以提高可读性&#xff09; 我们可以使用JAXB使用给定的Schema将Java对象编组为XML&#…

tkinter 菜单添加事件_Tasker的最新测试劫持了Android 11的电源菜单

流行的Android自动化应用Tasker 最近收到了重大更新&#xff0c;为该应用引入了许多新功能。该更新包括解锁应用程序读取手机上任何传感器以触发任务的功能&#xff0c;使您可以通过任何第三方应用程序自动发送短信或拨打电话的功能&#xff0c;完全请勿打扰自定义功能。通过链…

CLR via C#(18)——Enum

1. Enum定义 枚举类型是经常用的一种“名称/值”的形式&#xff0c;例如&#xff1a; public enum FeedbackStatus { New, Processing, Verify, Closed } 定义枚举类型之后我们在使用时方便了许多&#xff0c;不用再记着0代表什么状态…

PHP中 magic_quotes_gpc 和 magic_quotes_runtime 区别及其反斜线转义问题

php中关于反斜线转义&#xff1a;php中数据的魔法引用函数 magic_quotes_gpc 或 magic_quotes_runtime 设置为on时&#xff0c;当数据遇到 单引号 和 双引号" 以及 反斜线\ NULL时自动加上反斜线&#xff0c;进行自动转义。注释&#xff1a;默认情况下&#xff0c;PH…

JDK中的设计模式

Zen的JCG合作伙伴Brian Du Preez 是IT艺术领域的合作伙伴&#xff0c;他在收集JDK中最常见的设计模式方面做得非常出色。 模式列表确实令人印象深刻且很长&#xff0c;所以让我们不再ba不休&#xff0c;向您展示它。 前几天&#xff0c;我在企业Dev中看到了Rob Williams Brain …

414. 第三大的数

给你一个非空数组&#xff0c;返回此数组中 第三大的数 。如果不存在&#xff0c;则返回数组中最大的数 方法一 首先将数组排序&#xff0c;然后通过集合去除重复的元素&#xff0c;最后进行一次判断&#xff0c;选择第三大元素还是最大元素 class Solution {public int thir…

bufferevent 与 socket

http://blog.sina.com.cn/s/blog_56dee71a0100qx4s.html 很多时候&#xff0c;除了响应事件之外&#xff0c;应用还希望做一定的数据缓冲。比如说&#xff0c;写入数据的时候&#xff0c;通常的运行模式是&#xff1a; l 决定要向连接写入一些数据&#xff0c;把数据放入到缓冲…

Codeforces Round #102 (Div. 1) A. Help Farmer 暴力分解

A. Help Farmer题目连接&#xff1a; http://www.codeforces.com/contest/142/problem/A Description Once upon a time in the Kingdom of Far Far Away lived Sam the Farmer. Sam had a cow named Dawn and he was deeply attached to her. Sam would spend the whole summe…

电力电子、电机控制系统的建模和仿真_清华团队研发,首款国产电力电子仿真软件来啦~已捐赠哈工大、海工大、清华使用!...

点击上方电气小青年&#xff0c;关注并星标由于微信改版&#xff0c;只有星标才能及时看到我们的消息哦━━━━━━推荐阅读&#xff1a;《膜拜大神&#xff01;清华大学电机系2021年接收推荐免试直硕(博)生拟录取名单公示&#xff01;》《滴滴程序员年薪80万被鄙视不如在二本…

JVM如何处理锁

当我们谈论最新版本的Sun Hotspot Java虚拟机1.6时&#xff0c;当您尝试从java.util.concurrent.locks.Lock实现获取锁或输入同步块时&#xff0c;JVM将执行以下三种锁类型&#xff1a; 有偏见的 &#xff1a;有时即使在并发系统中也没有争用&#xff0c;并且在这种情况下&…

基于node.js及express实现中间件,实现post、get

首先&#xff0c;当然是有必要的环境&#xff0c;安装node&#xff0c;这个我就不多说了。 依赖模块&#xff1a; "express": "^4.13.4", "request": "^2.72.0", "body-parser": "^1.13.3",页面 $.ajax({type: &q…

可视化分析之图表选择

转载于:https://www.cnblogs.com/yymn/p/4783631.html

定义并调用函数输出 fibonacci 序列_科学网—Zmn-0351 薛问天:再谈数学概念的定义,评新华先生《0345》...

Zmn-0351 薛问天&#xff1a;再谈数学概念的定义&#xff0c;评新华先生《0345》【编者按。下面是薛问天先生发来的文章。是对《Zmn-0345》新华先生文章的评论。现在发布如下&#xff0c;供网友们共享。请大家关注并积极评论。另外本《专栏》重申&#xff0c;这里纯属学术讨论&…

Java和内存泄漏

总览 术语“内存泄漏”在Java中的使用方式不同于在其他语言中使用的方式。 通用术语中的“内存泄漏”是什么意思&#xff0c;在Java中如何使用&#xff1f; 维基百科的定义 当计算机程序消耗内存但无法将其释放回操作系统时&#xff0c;就会发生计算机科学中的内存泄漏&#x…

453. 最小操作次数使数组元素相等

给你一个长度为 n 的整数数组&#xff0c;每次操作将会使 n - 1 个元素增加 1 。返回让数组所有元素相等的最小操作次数。 class Solution {public int minMoves(int[] nums) {int res 0;int sum 0;int n nums.length;for(int i 0;i<n;i){sum nums[i];}res sum - min…