首先说介绍一下,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. WEP自动破解工具wesside-ng

    WEP自动破解工具wesside-ng   wesside-ng是aircrack-ng套件提供的一个概念验证工具.该工具可以自动扫描无线网络,发现WEP加密的AP.然后,尝试关联该AP.关联成功后, ...

  2. Codeforces.666A.Reberland Linguistics(DP)

    题目链接 \(Description\) 给定串s,其由一个基本串后加任意多个长度为2或3的后缀串构成,要求基本串长度>4且相邻后缀串不相同.在基本串任意确定的情况下,求所有可能的后缀串. \( ...

  3. j.u.c系列(10)---之并发工具类:Semaphore

    写在前面 Semaphore是一个计数信号量,它的本质是一个"共享锁". 信号量维护了一个信号量许可集.线程可以通过调用acquire()来获取信号量的许可:当信号量中有可用的许可 ...

  4. Linux下Shell函数返回值实现种类

    shell在执行的时候是顺序执行的,也不存在什么多线程什么的. 一下是实现种类: 1.全局 g_result="" function testFunc() { g_result=' ...

  5. LightOJ 1074 - Extended Traffic (SPFA)

    http://lightoj.com/volume_showproblem.php?problem=1074 1074 - Extended Traffic   PDF (English) Stati ...

  6. USBDM Debugger interface for Freescale RS08,HCS08,HCS12,Coldfire and ARM-Kinetis Devices.

    Introduction USBDM is a debugger hardware interface for a range of Freescale microcontrollers. It is ...

  7. [Winform]在关闭程序后,托盘不会消失的问题

    摘要 在开发winform程序时,添加了系统托盘,然发现在程序关闭后,托盘并不会消失,鼠标放在上面之后,才会消失.猜测是资源没有释放干净引起的.托盘作为form的组件,应该会随着form的关闭而释放啊 ...

  8. 对一个前端使用AngularJS后端使用ASP.NET Web API项目的理解(2)

    chsakell分享了一个前端使用AngularJS,后端使用ASP.NET Web API的项目. 源码: https://github.com/chsakell/spa-webapi-angula ...

  9. delphi 实现文件上传下载

    unit UpDownFile; interface uses Windows, Classes, Idhttp, URLMon, IdMultipartFormData; const UpUrl = ...

  10. delphi实现数字签名

    上周,另一部门需要支援解决数字签名问题.但因为之前也没做过,现学现卖.此方面可参考的中文资料较少,特作分享,方便查阅. 上周,另一部门需要支援解决数字签名问题.但因为之前也没做过,现学现卖.此方面可参 ...