單元測試之道C#版:使用NUnit

iDotNetSpace發表於2008-09-05
基本語法
1、單元測試
        斷言(Assert)方法:
        。AreEquals
        Assert.AreEquals(expected,actual[,string message]);
        這是使用最多的斷言形式,expected:期望值
        actual:被測試程式碼實際產生的值。
        message:是一個可選的訊息,如果提供的話,將會在發生錯誤的時候報告這一個訊息。
        。IsNull
        Assert.IsNull(object,string message);
        Assert.IsNotNull(object,string,message);
        messages:是可選項。
        。AreSame
        Assert.AreSame(expected,actual,string message)
        驗證expected引數和actual引數所引用的是否為同一個物件,相同返回true.
        。IsTrue
        Assert.IsTrue(bool conditis,string message)
        驗證給定的二元條件是否為真,如果為假的話,將會失敗。
        。IsFalse
        Assert.IsFalse(bool condition,string message)
        如果condition(條件)為假,則通過。
        。Fail
        Assert.Fail(string message)
        當執行這個斷言時,表示測試失敗,這種斷言通常被用於標記某個不應該被到達的分支 ,但它在實際中並不常用。

2、需要引用空間:using NUnit.Framework;
[TestFixture]attribute標記,每個包含測試的類都必須加上,該類必須宣告為Public,這樣測試的程式才可以找到它,建構函式不能帶引數。
測試方法需要加入[Test]attribute標記的方法,這樣Nunit工具就可以自動執行它。該方法需要標誌為Public。

3、分類(Category)Attribute。
[Category("類別名稱")]
如果在測試方法的前面加上分類屬性,在測試的時候,可以提供按選擇的分類執行。引數中的類別名稱,可以自定義。
屬性的設計有兩種方式
        1、[Test,Category("類別")]
        2、[Test]
           [Category("類別")]

4、Per-method的Setup和Teardown
        [Setup]
        [Teardown]
        在每執行一個測試方法的時候,如果有SetUp方法和TearDown系統都會首先執行SetUp屬性的方法,再執行TearDown屬性的方法。一個測試類中不允許有兩個以上的SetUp和TearDown。
5、[TestFixtureSetUp]、[TestFixtureTearDown]用於針對類的執行順序。
6、[Ignore("message")];忽略的測試方法。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-442050/,如需轉載,請註明出處,否則將追究法律責任。

相關文章