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:测试指定的对象是否为非空具个例子来说明上面所写的。(先创一个测试工程) 

单元测试中Assert类的用法的更多相关文章

  1. VS单元测试中Assert类的用法

    首先说介绍一下,Assert类所在的命名空间为Microsoft.VisualStudio.TestTools.UnitTesting 在工程文件中只要引用Microsoft.VisualStudio ...

  2. 单元测试中Assert类

    一.Assert类的使用 1.Assert类所在的命名空间为Microsoft.VisualStudio.TestTools.UnitTesting 在工程文件中只要引用Microsoft.Visua ...

  3. C#中timer类的用法

    C#中timer类的用法 关于C#中timer类  在C#里关于定时器类就有3个   1.定义在System.Windows.Forms里   2.定义在System.Threading.Timer类 ...

  4. android中Handle类的用法

    android中Handle类的用法 当我们在处理下载或是其他需要长时间执行的任务时,如果直接把处理函数放Activity的OnCreate或是OnStart中,会导致执行过程中整个Activity无 ...

  5. Java中Class类及用法

    Java中Class类及用法 Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识,即所谓的RTTI.这项信息纪录了每个对象所属的类.虚拟机通常使用运行时类型信息选准正确方 ...

  6. JUnit3 结合一个除法的单元测试说明Assert.fail()的用法

    之前一篇博文(JUnit基础及第一个单元测试实例(JUnit3.8))介绍了用JUnit做单元测试的基本方法,并写了一个简单的类Calculator,其中包含了整型加减乘除的简单算法. 本文通过完善其 ...

  7. 标准C++中string类的用法

    转自博客园:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非 ...

  8. 标准C++中string类的用法总结

    相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...

  9. [转] Java中ArrayList类的用法

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: 动态的增加和减少元素 实现了ICollection和ILis ...

随机推荐

  1. MySQL基础学习(二) 常用SQL命令

    一. 1. select version();  查看数据库版本 2. select user(); 查看当前用户 3. select now(); 查看当前时间 4. show databases; ...

  2. Keepalived+MySQL双主架构

    l  架构准备 Node1 192.168.15.3 Node2 192.168.15.4 VIP 192.168.15.254 l  软件 MySQL 5.6 Keepalive yum insta ...

  3. 烂泥:NFS做存储与KVM集成

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前有关NFS的文章,我们介绍的都是NFS的使用挂载等等.这篇文章我们介绍有关NFS作为存储使用. 既然本篇文章的主题是有关NFS的,我们还是先把NFS ...

  4. [转载]python脚本删除一定时间以外的文件

    import os; import sys; import time; class DeleteLog: def __init__(self,filename,days): self.filename ...

  5. mysql行锁和表锁

    mysql innodb支持行锁和表锁,但是MyIsam只支持表锁.现在我们说说mysql innodb的行锁和 有如下表id为主键 为了出现演示效果,我们将mysql的autocommit设置为0 ...

  6. C语言出错问题汇总【需要更新】

      'getch' : undeclared identifier解决方案 在VC++6.0中编译程序 #include<stdio.h> void main() { printf(&qu ...

  7. 彻底解决mysql中文乱码的办法,修改mysql解压缩版(免安装版或zip版)字符编码

    MySQL会出现中文乱码的原因不外乎下列几点:1.server本身设定问题,例如server字符编码还停留在latin12.table的语系设定问题(包含character与collation)3.客 ...

  8. 【2016-10-10】【坚持学习】【Day1】【观察者模式】

    今天学习了观察者模式 定义: 一个实体变化会影响其他实体变化 例子: 红绿灯与汽车 红绿灯是观察目标 汽车是实际观察者 灯的变化会影响车是停止还是前进. 例子: 游戏中,一个战队由若干队员组成,当其中 ...

  9. Codeforces Round #285 (Div.1 B & Div.2 D) Misha and Permutations Summation --二分+树状数组

    题意:给出两个排列,求出每个排列在全排列的排行,相加,模上n!(全排列个数)得出一个数k,求出排行为k的排列. 解法:首先要得出定位方法,即知道某个排列是第几个排列.比如 (0, 1, 2), (0, ...

  10. 重写成员“log4net.Util.ReadOnlyPropertiesDictionary.GetObjectData(System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext)”时违反了继承安全性规则

    在.NET 4.0下使用最新版本的log4Net 1.2.10,会遇到下面这样的错误: 重写成员“log4net.Util.ReadOnlyPropertiesDictionary.GetObject ...