您的位置:首页 > 其它

NUnit学习 -标签、方法 记录与说明

2010-02-11 10:36 127 查看
[TestFixture]

用于标记一个测试类

1 测试类必须是Public的。

2 必须有一个缺省的构造函数,构造函数应该没有任何的副作用。

[Test]

用于标记测试方法

1 方法必须没有参数。

2 必须是Public 返回值为 void。

[SetUp]

用于标记测试方法

其作用是将测试方法中公用的部分抽取出来,单独组织成一个方法,避免代码的冗余。是在进行其他测试方法前首先被执行的。

1 方法必须是Public的。

[Category]

用于标记测试方法

对测试方法进行分类标记。

[ExpectedException]

用于标记测试方法

如果被标记的方法没有抛出期望的异常,测试无法通过。

如:[ExpectedException(typeof(异常类型))]

[Ignore]

用于标记测试类或测试方法

被标记的测试类或测试方法将被忽略。

[Explicit]

与[Ignore]属性类似,区别在于被[Ignore]属性忽略后的test或testFixture再想调用执行是不可能的,而[Explicit]支持显示选择执行。

如:[Test,Explicit]

[TestFixtureSetUp]/[TestFixtureTearDown]

与[SetUp]/[TearDown]属性类似,此组属性用于标记测试方法,实现整个TestFixture的初始化和资源的统一释放。

Assert类

Assert类主要用于比较,拥有的方法:

AreEqual,AreSame,Equals,Fail,Ignore,IsFalse,InNotNull.

如:Assert.AreEqual(菠萝,凤梨);

静态类NUnit.Framework.Assert。该类主要包含20个方法:

  1.AreEqual()和AreNotEqual()方法,用来查看两个对象的值是否相等或不等,与对象比较中使用的Equals()方法类似。

  2.AreSame()和AreNotSame()方法,用来比较两个对象的引用是否相等或不等,类似于通过“Is”或“==”比较两个对象。

  3.Contains()方法,用来查看对象是否在集合中,集合类型应与System.Collections.IList兼容。示例:

    Dim o As New Object

    Dim al As New ArrayList

    al.Add(o)

    Assert.Contains(o, al)

  4.Greater()和Less()方法,用来比较两个数值的大小,前者相当于大于号(>),后者相当于小于号(<)。

  5.IsInstanceOfType()和IsNotInstanceOfType()方法,用来判断对象是否兼容于指定类型。示例:

    Dim t As Type = New Object().GetType

    Dim s As String = ""

    Assert.IsInstanceOfType(t, s)

由于Object是.net中所有类型的基类,String类型兼容于Object,因此这个示例是能够运行通过的。而下边这个示例运行将是失败的:

    Dim t As Type = New ArrayList().GetType

    Dim s As String = ""

    Assert.IsInstanceOfType(t, s)

  6.IsAssignableFrom()和IsNotAssignableFrom()方法,用来判断对象是否是指定类型的实例。示例:

    Dim t As Type = New Object().GetType

    Dim s As String = ""

    Assert.IsAssignableFrom(t, s)

这个示例与之前的示例是一样的,但由于字符串s不是Object类型的,因此无法运行通过。而下边这个实例可以运行通过:

    Dim t As Type = New String("").GetType

    Dim s As String = ""

    Assert.IsAssignableFrom(t, s)

  7.IsFalse()和IsTrue()方法,用来查看变量是是否为false或true,如果IsFalse()查看的变量的值是false则测试成功,如果是true则失败,IsTrue()与之相反。

  8.IsNull()和IsNotNull()方法,用来查看对象是否为空和不为空。

  9.IsEmpty()和IsNotEmpty()方法,用来判断字符串或集合是否为空串或没有元素,其中集合类型应与ICollection兼容。

  10.IsNaN()方法,用来判断指定的值是否不是数字。

  11.Fail()方法,意为失败,用来抛出错误。

  12.Ignore()方法,意为忽略,用来忽略后续代码的执行,用途可以参考Fail()方法。

此外,NUnit还提供了一个专用于字符串的静态类NUnit.Framework. StringAssert,该类主要包含4个方法:

  1.Contains()方法,用来查看指定的第二个字符串中是否包含了第一个字符串。

  2.StartsWith ()和EndsWith ()方法,分别用来查看指定的第一个字符串是否位于第二个字符串的开头和结尾。

  3.AreEqualIgnoringCase()方法,用来比较两个字符串是否相等。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ljsql/archive/2008/07/17/2663881.aspx

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: