zoukankan      html  css  js  c++  java
  • [转] .NET2005下单元测试中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;
                }

            }

            
    附加测试属性


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


        }


    }
  • 相关阅读:
    Analysis Services 查询性能十大最佳实践(转)
    谈谈一年来对“数据仓库”概念的困惑、探索和感悟(转)
    用sql语句添加删除主键
    大文件流操作及编码
    SQL Server CONVERT() 函数
    正则表达式提取案例1
    解析SQL SERVER存储过程返回值
    文件操作类Path
    HTTP状态码
    自己写的遮罩层效果
  • 原文地址:https://www.cnblogs.com/RobotTech/p/2059455.html
Copyright © 2011-2022 走看看