单元测试资料汇总
從安裝到配置
?
首先到官網http://www.nunit.org/下載如下圖的資料,安裝NUnit-2.6.1.msi包。
?
?
然后掛在VS2010外部工具這個地方來使用,工具—>外部工具—>添加—>標題:Nunit—>命令:安裝路徑—>確定。
?
然后打開Nunit,工具—>Nunit。
?
VS2010 NUnit 整合插件 Visual Nunit 2010下載:
http://visualstudiogallery.msdn.microsoft.com/c8164c71-0836-4471-80ce-633383031099,下載安裝完畢就能在 VS2010 的 視圖->其它窗體 中看到 Visual Nunit了(或使用快捷鍵Ctrl + F7),打開該視圖,將之拖到合適的位置。打開如下圖,會自動加載測試的方法。
?
?
使用入門
?
建立項目如下圖(注意項目依賴,程序集引用):
?
?
//Number.cs
namespace BaseClass
{public class Number{public static int TestMethod(){return 29;}}
}
?
//NunitTestClass.cs
namespace NunitTestClass
{/// <summary>/// 初行-博客園 http://zxlovenet.cnblogs.com/// </summary>/// 這是一個測試類[NUnit.Framework.TestFixture]public class NunberTest{//測試用的方法//方法必須是public,返回類型void,無參[Test]public void GetTestAreEqual(){int test1 = BaseClass.Number.TestMethod();//驗證test1的值必須是29才能通過Assert.AreEqual(29, test1);}[Test]public void GetTestGreater(){int test1 = BaseClass.Number.TestMethod();//驗證test1de值必須大于0才能通過Assert.Greater(test1, 30);}}
}
?
然后F6生成,找到生成文件如下圖:
?
VS2010下,工具—>Nunit,打開后 File—>New Project…,保存到一個位置,然后點Fiel—>Save。添加程序集:Project—>Add Assembly…,找到測試文件如下圖:
?
?
打開后的效果如圖:
?
?
點擊Run執行測試,效果如下圖:
?
通過上圖可以看出,通過測試的會打“√”,無法通過測試的打“×”。
?
博客園-初行?2014.3.10編輯
?
讓我們更進一步看一下測試運行器窗口的布局。在右邊面板的中間,可以看到測試進度條。進度條的顏色反映了測試執行的狀態:
l? 綠色 描述目前所執行的測試都通過
l? 黃色 意味某些測試忽略,但是這里沒有失敗
l? 紅色 表示有失敗
?
底部的狀態條表示下面的狀態:
?
l? 狀態.說明了現在運行測試的狀態。當所有測試完成時,狀態變為Completed.運行測試中,狀態是Running: <test-name> (<test-name>是正在運行的測試名稱)。
l? Test Cases說明加載的程序集中測試案例的總個數。這也是測試樹里葉子節點的個數。
l? Tests Run 已經完成的測試個數。
l? Failures? 到目前為止,所有測試中失敗的個數.
l? Time? 顯示運行測試時間(以秒計)
?
File主菜單有以下內容:
?
l? New Project允許你創建一個新工程。工程是一個測試程序集的集合。這種機制讓你組織多個測試程序集,并把他們作為一個組對待。
l? Open 加載一個新的測試程序集,或一個以前保存的NUnit工程文件。
l? Close關閉現在加載的測試程序集或現在加載的NUnit工程。
l? Save 保存現在的Nunit工程到一個文件。如果正工作單個程序集,本菜單項允許你創建一個新的NUnit工程,并把它保存在文件里。
l? Save As允許你將現有NUnit工程作為一個文件保存。
l? Reload 強制重載現有測試程序集或NUnit工程。NUnit-Gui自動監測現加載的測試程序集的變化。
?
當程序集變化時,測試運行器重新加載測試程序集。(當測試正運行時,現在加載的測試程序集不會重新加載。在測試運行之間測試程序集僅可以重新加載。一個忠告:如果測試程序集依賴另外一個程序集,測試運行器不會觀察任何依賴的程序集。對測試運行器來說,強制一個重載使全部依賴的程序集變化可見。
?
l? Recent Files? 說明5個最近在NUnit中加載的測試程序集或NUnit工程(這個列表在Windows注冊表,由每個用戶維護,因此如果你共享你的PC,你僅看到你的測試)。最近程序集的數量可以使用Options菜單項修改,可以訪問Tool主菜單。
l? Exit退出。
l? View菜單有以下內容:
l? Expand一層層擴展現在樹中所選節點
l? Collapse 折疊現在樹中選擇的節點
l? Expand All遞歸擴展樹中所選節點后的所有節點
l? Collapse All遞歸折疊樹中所選節點后的所有節點
l? Expand Fixtures擴展樹中所有代表測試fixture的節點。
l? Collapse Fixtures 折疊樹中所有代表測試fixture的節點。
l? Properties 顯示樹中現所選節點的屬性。
l? Tools 菜單由這些項:
l? Save Results as XML作為一XML文件保存運行測試的結果。
l? Options讓你定制NUnit的行為。
l? 現在看看右邊,你已經熟悉Run按鈕和進度條。這里還有一個緊跟Run按鈕的Stop按鈕:點擊這個按鈕會終止執行正運行的測試。進度條下面是一個文本窗口,在它上方,由以下4個標簽:
l? Errors and Failures 窗口顯示失敗的測試。在我們的例子里,這個窗口是空。
l? Tests Not Run 窗口顯示沒有得到執行的測試。
l? Console.Error 窗口顯示運行測試產生的錯誤消息。這些此消息是應用程序代碼使用Console.Error輸出流可以輸出的。
l? Console.Out窗口顯示運行測試打印到Console.Error輸出流的文本消息。
?
參考資料:http://confach.cnblogs.com/archive/2005/06/20/177817.aspx
?
總結
NUnit有這樣幾個優點
1.獨立于IDE,可以單獨運行。也可以以命令行方式運行。(vs應該也可以吧?)
2.版本更新快。(我不認為這是個優點,而且我也并不覺得快啊。)
3.VS的UT工具運行速度慢。(不一定)
?
NUite也有這樣幾個缺點
1.不支持Debug,要安裝TestDriven.NET才支持。
2.不支持代碼覆蓋率的查看,要和NCover一起用。而VS的代碼覆蓋很清楚。
3.不能自動生成測試代碼,也許和CodeSmith一起用好些,不過后著要收費的。
?
?心情不爽,發篇隨筆調整用一下心情~
轉載于:https://www.cnblogs.com/zxlovenet/p/3592709.html
總結
- 上一篇: 求一个qq的个性签名!
- 下一篇: 亚龙湾坐几路公交能到