本內容摘自:《單元測試之道c#版:使用nunit》
編寫目的:供日後參考學習,好記心不如爛筆頭。
基本語法
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")];忽略的測試方法。
單元測試NUnit
在vs中新建的專案中加入nunit.framework的引用。或許我們可以這麼做測試,但顯然不專業。我們新建乙個類叫calculatortest,雖然名字可以隨意起,但是最好這麼叫,比較明顯。注意,這裡的測試方法必須是public void,且沒有引數的,方法名字可以隨意取。而且注意這裡判斷採用的a...
單元測試NUnit教程
測試 必須做以下幾件事情 準備測試所需的條件 呼叫要測試的方法 驗證被測方法的行為和期望的行為是否一致 完成後清理各種資源 為了使用nunit框架,需要做這些工作 1.使用using宣告引用必要的nunit類 並新增乙個指向nunitdll的引用 2.定義乙個測試類,必須是public的 包換乙個p...
單元測試之NUnit
綠色 描述執行的測試通過。黃色 執行的某些測試忽略,但沒有失敗。紅色 測試失敗。testfixture 放在類前,標識類為測試類。test 放在測試類的方法前,標識該方法為可測試的方法。1 該方法必須沒有引數。2 該方法為public型別。3 該方法沒有返回值。setup 每個測試方法執行前,執行該...