Unity技术之NUnit 第二章:断言(Assert)详解

24 篇文章 1 订阅
12 篇文章 0 订阅

Unity技术之NUnit 第二章:断言(Assert)详解

简介

NUnit提供了一些辅助函数用于帮助判断某个被测试的函数是否正确执行,通常我们把这些函数统称为断言。使用这些断言可以判断条件是否为真、两个数据是否相相等或者不等、或者其它的一些情况。后面的内容将详细的介绍NUnit提供的断言(Assert)方法

NUnit最常用的断言主要集中在NUnit.Framework.Assert类中,对于集合的断言在NUnit.Framework.CollectionAssert类中进行了扩展,对于目录的断言在NUnit.Framework.DirectoryAssert类中进行了扩展,对于字符串类的断言在NUnit.Framework.StringAssert类中进行了扩展,对于文件类的断言在NUnit.Framework.FileAssert类中进行了扩展。

声明

本文中的内容属于个人总结整理而来,个人水平有限,对于部分细节难免有理解错误及遗漏之处,如果您在阅读过程中有所发现,希望您能指正,同时文章中的部分内容也参考了其它大神的文章,如果文章中的内容侵犯了您的权益,表示非常歉意,请您指出,我将尽快修改。

如果您进行转载,请标明出处。

Unity技术之NUnit 2.断言(Assert)详解(http://www.liyubin.com/articles/2019/05/21/1558433994210.html)

API详解

Assert断言

使用Assert中的断言基本上能满足绝大多数的需求,是最常使用的断言,为了介绍方便,将其分为Comparison、Condition、Equality、Exception、Type、Other几种类型来详细的阐述。

  1. Comparison(比较断言)
  • Greater

    Assert.Greater(arg1, arg2[, message, args])

    参数说明:

    • arg1: 用于比较的第一个值,期望是比arg2大

    • arg2:用于比较的第二个值,期望比arg1小

    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息

    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,uint,long,ulong,decimal,double
    ,float及其它实现IComparable接口的类型,判断arg1是否大于arg2

  • GreaterOrEqual

    Assert.GreaterOrEqual(arg1, arg2[, message, args])

    参数说明:

    • arg1: 用于比较的第一个值,期望是大于或等于arg2大

    • arg2:用于比较的第二个值,期望小于或等于arg1

    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息

    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,uint,long,ulong,decimal,double,float及其它实现IComparable接口的类型,判断arg1是否大于等于arg2

  • Less

    Assert.Less(arg1, arg2[, message, args])

    参数说明:

    arg1: 用于比较的第一个值,期望是比arg2小

    arg2:用于比较的第二个值,期望比arg1大

    message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息

    args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:
    适用于int,uint,long,ulong,decimal,double,float及其它实现IComparable接口的类型,判断arg1是否小于arg2

  • LessOrEqual
    Assert.LessOrEqual(arg1, arg2[, message, args])

    参数说明:

    • arg1: 用于比较的第一个值,期望是小于或等于arg2大
    • arg2:用于比较的第二个值,期望小于或等于arg1
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,uint,long,ulong,decimal,double,float及其它实现IComparable接口的类型,判断arg1是否小于等于arg2

  1. Condition(条件断言)
  • IsTrue/True

    Assert.IsTrue(condition[,message,args])
    Assert.True(condition[,message,args])

    参数说明:

    • condition:bool型参数
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于bool类型或者结果为bool类型,用于判断是否为true

  • IsFalse/False

    Assert.IsFalse(condition[,message,args])
    Assert.False(condition[,message,args])

    参数说明:

    • condition:bool型参数
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于bool类型或者结果为bool类型,用于判断是否为false

  • IsNotNull/NotNull

    Assert.IsNotNull(anObject[, message, args])
    Assert.NotNull(anObject[, message, args])

    参数说明:

    • anObject:object引用型对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于object引用型对象,判断对象是否不为空

  • IsNull/Null

    Assert.IsNull(anObject[, message, args])
    Assert.Null(anObject[, message, args])

    参数说明:

    • anObject:object引用型对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于object引用型对象,判断对象是否为空

  • IsNaN

    Assert.IsNaN(aDouble[, message, args])

    参数说明:

    • aDouble:double数值类型
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于double类型,用于判断其值是否为非数字

  • IsEmpty

    Assert.IsEmpty(arg1[, message, args])

    参数说明:

    • arg1:字符串或者实现了IEnumerable的值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于string类型或者实现了IEnumerable的类型,判断其值是否不包含任何内容

  • IsNotEmpty

    Assert.IsNotEmpty(arg1[, message, args])

    参数说明:

    • arg1:字符串或者实现了IEnumerable的值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于string类型或者实现了IEnumerable的类型,判断其值是否存在内容

  • Zero

    Assert.Zero(arg1[, message, args])

    参数说明:

    • arg1:需要判断的数值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,double,uint,long,decimal,float类型,用于判断其值是否为0

  • NotZero

    Assert.NotZero(arg1[, message, args])

    参数说明:

    • arg1:需要判断的数值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,double,uint,long,decimal,float类型,用于判断其值是否不为0

  • Positive

    Assert.Positive(arg1[, message, args])

    参数说明:

    • arg1:需要判断的数值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,double,uint,long,decimal,float类型,用于判断其值是否为正数

  • Negative

    Assert.Negative(arg1[, message, args])

    参数说明:

    • arg1:需要判断的数值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于int,double,uint,long,decimal,float类型,用于判断其值是否为负数

  1. Equality(相等性断言)
  • AreEqual

    Assert.AreEqual(expected,actual,[delta, message, args])

    参数说明:

    • expected:期望的值,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际的值
    • delta:误差值,由于计算机无法准确表示浮点数,当判断类型为浮点数时,需要指定误差值,当差距小于误差值时,认为是相等的
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型的对象,用于判断测试结果是否与期望值相等,不过对于引用型对象最好不要使用此断言,而是使用AreSame

  • AreNotEqual

    Assert.AreNotEqual(expected,actual[, delta, message, args])

    参数说明:

    • expected:期望的值,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际的值
    • delta:误差值,由于计算机无法准确表示浮点数,当判断类型为浮点数时,需要指定误差值,当差距小于误差值时,认为是相等的
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型的对象,用于判断测试结果是否与期望值不相等,不过对于引用型对象最好不要使用此断言,而是使用AreSame

  • AreSame

    Assert.AreSame(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际的值
    • delta:误差值,由于计算机无法准确表示浮点数,当判断类型为浮点数时,需要指定误差值,当差距小于误差值时,认为是相等的
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于引用类型的对象,用于判断测试结果对象与指定的对象是否是同一对象

  • AreNotSame

    Assert.AreNotSame(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际的值
    • delta:误差值,由于计算机无法准确表示浮点数,当判断类型为浮点数时,需要指定误差值,当差距小于误差值时,认为是相等的
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于引用类型的对象,用于判断测试结果对象与指定的对象是否是不同的对象

  1. Exception(异常断言)
  • DoesNotThrow
  • Catch
  • Throws
  1. Type(类型相关断言)
  • IsAssignableFrom

    Assert.IsAssignableFrom(expected,actual[, message, args])
    Assert.IsAssignableFrom(actual[, message, args])

    参数说明:

    • expected:期望的值,一个Type类型的参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型,用来判断对象是否是指定类型的实例

  • IsNotAssignableFrom

    Assert.IsNotAssignableFrom(expected,actual[, message, args])
    Assert.IsNotAssignableFrom(actual[, message, args])

    参数说明:

    • expected:期望的值,一个Type类型的参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型,用来判断对象是否不是指定类型的实例

  • IsInstanceOf

    Assert.IsInstanceOf(expected,actual[, message, args])
    Assert.IsInstanceOf(actual[, message, args])

    参数说明:

    • expected:期望的值,一个Type类型的参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型,用来判断对象是否兼容于指定类型

  • IsNotInstanceOf

    Assert.IsNotInstanceOf(expected,actual[, message, args])
    Assert.IsNotInstanceOf(actual[, message, args])

    参数说明:

    • expected:期望的值,一个Type类型的参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于任何类型,用来判断对象是否不兼容于指定类型

CollectionAssert断言

  • AllItemsAreInstancesOfType

    CollectionAssert.AllItemsAreInstancesOfType(collection,expectedType[, message, args])

    参数说明:

    • collection:用于测试的实现IEnumerable的对象
    • expectedType:期望的元素类型,一个Type类型参数
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于实现IEnumerable的对象,用于判断其每个元素是否是指定的类型

  • AllItemsAreNotNull

    CollectionAssert.AllItemsAreNotNull(collection[, message, args])

    参数说明:

    • collection:用于测试的实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    用于判断其中的所有元素是否均不为Null

  • AllItemsAreUnique

    CollectionAssert.AllItemsAreUnique(collection[, message, args])

    参数说明:

    • collection:用于测试的实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    用于判断其中的所有元素是否是唯一存在的,即没有重复的元素

  • AreEqual

    CollectionAssert.AreEqual(expected, actual[, comparer, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果值,其实现IEnumerable的对象
    • comparer:比较方式,其实现IComparer的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断集合中测试值是否与期望的值是相同的,需要有相同的数量、每个元素在相同的位置上

  • AreEquivalent

    CollectionAssert.AreEquivalent(expected, actual[, comparer, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果值,其实现IEnumerable的对象
    • comparer:比较方式,其实现IComparer的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断集合中测试值是否与期望的值是相同的,需要有相同的数量但是忽略每个元素所有的位置

  • AreNotEqual

    CollectionAssert.AreEqual(expected, actual[, comparer, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果值,其实现IEnumerable的对象
    • comparer:比较方式,其实现IComparer的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断集合中测试值是否与期望的值是不相同的,元素的数量不同,位置不同均认为是不相同的

  • AreNotEquivalent

    CollectionAssert.AreEquivalent(expected, actual[, comparer, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果值,其实现IEnumerable的对象
    • comparer:比较方式,其实现IComparer的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断集合中测试值是否与期望的值是不相同的,判断时会忽略每个元素位置

  • Contains

    CollectionAssert.Contains(collection, actual[, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果object对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否包括于指定的集合中

  • DoesNotContain

    CollectionAssert.DoesNotContain(collection, actual[, message, args])

    参数说明:

    • expected:期望的值,其实现IEnumerable的对象
    • actual:测试结果object对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否不包括于指定的集合中

  • IsNotSubsetOf

    CollectionAssert.IsNotSubsetOf(subset, superset[, message, args])

    参数说明:

    • subset:期望的值,子集判断对象,其实现IEnumerable的对象
    • superset:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断期望的集合是否不是测试结果的子集

  • IsSubsetOf

    CollectionAssert.IsSubsetOf(subset, superset[, message, args])

    参数说明:

    • subset:期望的值,子集判断对象,其实现IEnumerable的对象
    • superset:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断期望的集合是否是测试结果的子集

  • IsNotSupersetOf

    CollectionAssert.IsNotSupersetOf(superset,subset[, message, args])

    参数说明:

    • superset:期望的值,子集判断对象,其实现IEnumerable的对象
    • subset:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否不是期望集合的子集

  • IsSupersetOf

    CollectionAssert.IsSupersetOf(superset,subset[, message, args])

    参数说明:

    • superset:期望的值,子集判断对象,其实现IEnumerable的对象
    • subset:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否是期望集合的子集

  • IsEmpty

    CollectionAssert.IsEmpty(collection[, message, args])

    参数说明:

    • collection:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否是一个空的集合

  • IsNotEmpty

    CollectionAssert.IsNotEmpty(collection[, message, args])

    参数说明:

    • collection:测试结果,其实现IEnumerable的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果是否不是一个空的集合

  • IsOrdered

    CollectionAssert.IsOrdered(collection[, comparer, message, args])

    参数说明:

    • collection:测试结果,其实现IEnumerable的对象
    • comparer:比较方式,其实现IComparer的对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试结果集合是否是有序的

  1. Other(其它断言)
    • Pass
    • Fail
    • Warn
    • Ignore
    • Inconclusive
    • Contains
    • Multiple

DirectoryAssert断言

  • AreEqual

    DirectoryAssert.AreEqual(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一个DirectoryInfo参数
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于DirectoryInfo类型的值,以判断是否指向同一目录

  • AreNotEqual

    DirectoryAssert.AreNotEqual(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一个DirectoryInfo参数
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于DirectoryInfo类型的值,以判断是否指向不同的目录

  • Exists

    DirectoryAssert.Exists(actual[, message, args])

    参数说明:

    • actual:被测试代码产生的实际DirectoryInfo对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于DirectoryInfo类型的值,以判断目录是否存在

  • DoesNotExist

    DirectoryAssert.DoesNotExist(actual[, message, args])

    参数说明:

    • actual:被测试代码产生的实际DirectoryInfo对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于DirectoryInfo类型的值,以判断目录是否不存在

StringAssert断言

  • Contains

    StringAssert.Contains(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串中是否包含expected字符串

  • DoesNotContain

    StringAssert.DoesNotContain(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串中是否不包含expected字符串

  • StartsWith

    StringAssert.StartsWith(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串是否以expected开始

  • DoesNotStartWith

    StringAssert.DoesNotStartWith(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串是否不以expected开始

  • EndsWith

    StringAssert.EndsWith(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串是否以expected结尾

  • DoesNotEndWith

    StringAssert.DoesNotEndWith(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    判断测试actual字符串是否不以expected结尾

  • AreEqualIgnoringCase

    StringAssert.AreEqualIgnoringCase(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    在忽略文本大小写的情况下,进行判断结果是否与期望的值相同

  • AreNotEqualIgnoringCase

    StringAssert.AreNotEqualIgnoringCase(expected,actual[, message, args])

    参数说明:

    • expected:期望string值
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    在忽略文本大小写的情况下,进行判断结果是否与期望的值不相同

  • IsMatch

    StringAssert.IsMatch(pattern,actual[, message, args])

    参数说明:

    • pattern:用于测试匹配的正则表达式
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    用于判断结果是否符合指定的正式则表式

  • DoesNotMatch

    StringAssert.DoesNotMatch(pattern,actual[, message, args])

    参数说明:

    • pattern:用于测试匹配的正则表达式
    • actual:被测试代码产生的string值
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    用于判断结果是否不符合指定的正式则表式

FileAssert断言

  • AreEqual

    FileAssert.AreEqual(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一个Stream,FileInfo,指向文件路径string参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于Stream,FileInfo,指向文件路径string参数,判断两个文件是否相同,如果两个值为null或者拥有相同的字节则认为是相同的

  • AreNotEqual

    FileAssert.AreNotEqual(expected,actual[, message, args])

    参数说明:

    • expected:期望的值,一个Stream,FileInfo,指向文件路径string参数,一般情况下采用硬编码的方式指定
    • actual:被测试代码产生的实际对象
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于Stream,FileInfo,指向文件路径string参数,判断两个文件是否不相同

  • Exists

    FileAssert.Exists(actual[, message, args])

    参数说明:

    • actual:被测试代码产生的实际对象,一个FileInfo,指向文件路径string参数
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于FileInfo,指向文件路径string参数,判断文件是否存在

  • DoesNotExist

    FileAssert.DoesNotExist(actual[, message, args])

    参数说明:

    • actual:被测试代码产生的实际对象,一个FileInfo,指向文件路径string参数
    • message:可选参数,指定一个消息内容,当发生错误时会报告此消息,与args参数结合使用可以提供格式化的消息
    • args:可选的参数,与message配合使用,为params object[]类型,当message参数为格式化消息时可以使用些参数指定消息中值

    适用范围:

    适用于FileInfo,指向文件路径string参数,判断文件是否不存在

章节

参考资料

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
“中级/进阶篇”讲解特点与内容:         本“中级”与“进阶”篇, 是面向初中级游戏研发人员,以及Unity中高级学习者。为了更加深入的刨析各个语法的本质,我们采用反编译解读IL中间语言的方式,来解构语法重点与难点。 中级篇内容主要讲解: .Net 框架、里氏替换原则(LSP)、类的属性极其本质特性、IS ,AS 关键字、字符串的“驻留性” 原理、深入解析Equals() 原理、枚举类型、自定义集合、深入解析动态集合特性与内部原理、泛型集合、泛型约束、初级委托与事件讲解等。 进阶篇是在中级篇的基础之上,进一步研究与讲解关于IO操作、序列化、正则表达式、系统委托(Action、Function、Predicate等)、反射原理与特性、Linq查询表达式、多线程、线程池、任务、Socket套接字编程(Tcp与UDP协议),以及最后使用Unity开发具备实战价值的通讯聊天程序等。C#“进阶篇”教学详细说明如下:1: IO操作与序列化      学习文件、目录、二进制文件、文本文件的读取与写入底层原理。学习文件序列化与反序列化技能。2: 正则表达式      学习正则表达式的强大作用与常用原字符的含义与应用场景。3: 深入委托与事件      学习Action、Func、Predicate 系统内置委托类型,已经适用场合。学习匿名方法、Lambda表达式。深入解析委托与事件的区别。4: 反射与特性      学习反射的概念与动态调用的重要应用价值,以及Type、Assembley核心类等,最后讲解“特性”技术。5: Linq 查询表达式     学习Linq 查询表达式对于“对象集合”(支持IEnumberable 或IEnumberable) 以及SQL数据库、XML文档方面的强大查询功能。    6: 多线程     学习多线程以及线程传参、线程取得返回数值技术,前台与后台线程、线程的同步、线程池、任务等技术。   7: Socket套接字通讯     学习Socket套接字通讯中,Tcp与UPD通讯协议的不同应用场景,以及各自的演示示例,最后用Unity开发一款实用性的聊天通讯工具。温习提示:           本C# for Unity 使用Virtual Studio2012,以及Unity5.2 进行开发与讲解。(学员使用更高版本,对学习没有任何影响)。      A:《C# For Unity系列之入门篇》https://edu.csdn.net/course/detail/4560B:《C# For Unity系列之基础篇》https://edu.csdn.net/course/detail/4595C: 《C# For Unity系列之中级篇》https://edu.csdn.net/course/detail/24422

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值