>(Addison-Wesley Professional,2003)一書中,使用下面2個原則來定義TDD:">
您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > Nunit
NUnit詳細使用方法
作者:網(wǎng)絡轉載 發(fā)布時間:[ 2012/12/7 11:44:36 ] 推薦標簽:

1. TDD的簡介
首先什么是TDD呢?Kent Beck在他的<<測試驅動開發(fā) >>(Addison-Wesley Professional,2003)一書中,使用下面2個原則來定義TDD:
·除非你有一個失敗的自動測試,永遠不要寫一單行代碼.
·阻止重復
我想第一個原則是顯而易見的.在沒有失敗的自動測試下不要寫代碼.因為測試是嵌入在代碼必須滿足的需求中.如果沒有需求,沒有必要實現(xiàn)任何東西.所以這個原則阻止我們?nèi)崿F(xiàn)那些沒有測試和在解決方案中不需要的功能.
第二個原則說明了在一個程序中,不應該包含重復的代碼.如果代碼重復,我想這是不好的軟件設計的象征.隨著時間的流逝,它會對程序造成不一致的問題,并且使代碼變非常混亂 ,因為我們時常不會記得重復代碼的位置.如果發(fā)現(xiàn)代碼重復,我想我們應該立即刪除代碼重復.其實這涉及到重構了.在這里我不多講了.
一般來說,測試分為2種類型,一是程序員自己的測試,另外一種是客戶的測試.關于客戶測試,我推薦一個FIT的框架,非常不錯。在這里,我們講的TDD是程序員測試.那么什么是程序員測試呢?我認為是我們常說的單元測試.既然是單元測試,在.NET里勢必會用到某些工具,目前恐怕是我即將介紹的javascript:;" onClick="javascript:tagshow(event, 'NUnit');" target="_self">NUnit了

   2.NUnit的介紹

  NUnit是一個單元測試框架,專門針對于.NET來寫的.其實在前面有JUnit(Java),CPPUnit(C++),他們都是xUnit的一員.初,它是從JUnit而來.現(xiàn)在的版本是2.2.接下來我所用的都是基于這個版本.

  NUnit初是由James W. Newkirk, Alexei A. Vorontsov 和Philip A. Craig, 后來開發(fā)團隊逐漸龐大起來.在開發(fā)過程中, Kent Beck 和Erich Gamma2位牛人也提供了許多幫助.看來對于NUnit還真是下了一番力氣了.JNUnit是xUnit家族種的第4個主打產(chǎn)品,完全由C#語言來編寫,并且編寫時充分利用了許多.NET的特性,比如反射,客戶屬性等等.

  重要的一點是它適合于所有.NET語言.

  如果你還沒有下載,可以到http://www.nunit.org/去下載.

  2.1 NUnit的介紹

  Ok,下面正式講解NUnit.在講解之前,看看幾張圖片:

   圖1 NUnit運行的效果

   圖2 NUnit運行的另外一個效果

  從中我們可以非常容易發(fā)現(xiàn),右邊是個狀態(tài)條,圖1是紅色的,圖2是綠色的.為什么會這樣呢?因為如果所有測試案例運行成功,為綠色,反之如果有一個不成功,則為紅色,但也有黃色的.左面的工作域內(nèi)則是我們寫的每一個單元測試.

  通過上面的圖片,我想你對NUnit有個總的了解了.

  接下來還是分為2個部分,一是NUnit的布局,另外一部分是它的核心概念.

  首先熟悉一下NUnit GUI的布局.

  讓我們更進一步看一下測試運行器窗口的布局。在右邊面板的中間,可以看到測試進度條。進度條的顏色反映了測試執(zhí)行的狀態(tài):

  綠色 描述目前所執(zhí)行的測試都通過

  黃色 意味某些測試忽略,但是這里沒有失敗

  紅色 表示有失敗

  底部的狀態(tài)條表示下面的狀態(tài):

  狀態(tài).說明了現(xiàn)在運行測試的狀態(tài)。當所有測試完成時,狀態(tài)變?yōu)镃ompleted.運行測試中,狀態(tài)是Running: (是正在運行的測試名稱)。

  Test Cases說明加載的程序集中測試案例的總個數(shù)。這也是測試樹里葉子節(jié)點的個數(shù)。

  Tests Run 已經(jīng)完成的測試個數(shù)。

  Failures 到目前為止,所有測試中失敗的個數(shù).

  Time 顯示運行測試時間(以秒計)

  File主菜單有以下內(nèi)容:

  New Project允許你創(chuàng)建一個新工程。工程是一個測試程序集的集合。這種機制讓你組織多個測試程序集,并把他們作為一個組對待。

  Open 加載一個新的測試程序集,或一個以前保存的NUnit工程文件。

  Close關閉現(xiàn)在加載的測試程序集或現(xiàn)在加載的NUnit工程。

  Save 保存現(xiàn)在的Nunit工程到一個文件。如果正工作單個程序集,本菜單項允許你創(chuàng)建一個新的NUnit工程,并把它保存在文件里。

  Save As允許你將現(xiàn)有NUnit工程作為一個文件保存。

  Reload 強制重載現(xiàn)有測試程序集或NUnit工程。NUnit-Gui自動監(jiān)測現(xiàn)加載的測試程序集的變化。

  當程序集變化時,測試運行器重新加載測試程序集。(當測試正運行時,現(xiàn)在加載的測試程序集不會重新加載。在測試運行之間測試程序集僅可以重新加載。一個忠告:如果測試程序集依賴另外一個程序集,測試運行器不會觀察任何依賴的程序集。對測試運行器來說,強制一個重載使全部依賴的程序集變化可見。

  Recent Files 說明5個近在NUnit中加載的測試程序集或NUnit工程(這個列表在Windows注冊表,由每個用戶維護,因此如果你共享你的PC,你僅看到你的測試)。近程序集的數(shù)量可以使用Options菜單項修改,可以訪問Tool主菜單。

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd