首先说介绍一下,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:测试指定的对象是否为非空
 

/**//// <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,"不是空所以测试失败");           
        }

    }

} {
    /**//// <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,"不是空所以测试失败");           
        }

    }

}

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

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

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

  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. BZOJ 4198: [Noi2015]荷马史诗 哈夫曼树 k叉哈夫曼树

    https://www.lydsy.com/JudgeOnline/problem.php?id=4198 https://blog.csdn.net/chn_jz/article/details/7 ...

  2. xcode 拷贝新的ios image 进去以后 出现 the divices is locked

    苹果公司时不时的给你更新下ios系统.对于开发者来说.更新xcode是灾难性的. 一直在用xcode7.3.1,可是最新不小心把手机升级到 ios 10.1.1,这下好了,真机调试不行了.提示没有镜像 ...

  3. MikroTik RouterOS授权级别

    抄了一份来自淘宝代理商的说明: P系列许可级别(适用于联网的虚拟机,如:云主机,虚拟机,VPS等) 您必须在MikroTik官网 https://mikrotik.com/client/ 上拥有一个帐 ...

  4. memcached对key和value的限制 memcached的key最大长度和Value最大长度

    memcached的简单限制就是键(key)和item的限制.最大键长为250个字符.可以接受的储存数据不能超过1MB,因为这是典型slab 的最大值.这里我们可以突破对key长度的限制.问题解决:修 ...

  5. VS2015 打包winform 安装程序

    最近开发了一个小软件.由于需要打包.网上找了一些资料.然后整合了起来.希望对大家有所帮助.不全面请见谅. 打包控件 InstallShield-Limited-Edition  下面是注册地址 htt ...

  6. TCPIP网络协议层对应的RFC文档

    原文地址:TCPIP网络协议层对应的RFC文档作者:西木 RFC - Request For Comments 请求注解 TCP/IP层 网络协议 RFC文档 Physical Layer Data ...

  7. 最近5年183个Java面试问题列表及答案[最全]

    Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别(String 类型和 StringBuffer 类型的主要性能区别其实在于 Stri ...

  8. Revit API创建几何实体Solid并找到与之相交的元素

    几何实体的创建方法之一:构成封闭底面,指定拉伸方向与拉伸高度.GeometryCreationUtilities ;         , pt.Y - dBoxLength / , pt.Z);    ...

  9. 在Visual Studio中使用类图描述领域模型

    右键解决方案,添加一个名称为"Domain Model"的UML类图. 首先站在整体的角度添加类,先不要任何属性. 添加Customer对Wishlist的关联,把"属性 ...

  10. tomcat内存溢出设置JAVA_OPTS

     答案1设置Tomcat启动的初始内存其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4.可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置三.实例,以 ...