Visual Studio 中的單元測試 UNIT TEST

來源:互聯網
上載者:User

標籤:des   style   blog   http   color   io   os   ar   for   

原文:Visual Studio 中的單元測試 UNIT TEST

註:本文系作者原創,可隨意轉載,但請註明出處。如實在不願註明可留空,強烈反對更改原創出處。


TDD(Test-Driven Development) 測試驅動開發是敏捷開發中的一項核心實踐和技術,也是一種設計方法論。TDD的原理是在開發功能代碼之前,先編寫單元測試用例代碼,測試代碼確定需要編寫什麼產品代碼。單元測試是最基本的測試步驟。位於整個產品開發流程V模型的最底部。
大致,在各種開發流程中RA&PSD完成後,無需底層基礎,UAT方案即可完成,下面的步驟也一樣。UT做為底層和CODING同樣重要的步驟,是每個CODER必須掌握的基礎。
RA( Requirement Analysis)  &
PSD ( Productive Specification Design)              UAT( User Acceptance Testing)
                          \                                                              /
                            \                                                          /
                              \                                                      /
FSD(Functional Specification Design)             SIT(System Integration Testing)
                                \                                                 /
                                  \                                             /
                                    \                                         /
                           Construction(Coding)         UT(Unit Tesing)
                                         \                              /
                                            \                         /
                                                \                   /
                                                  \              /
                                                     \         /
                                                        \    /
                                                          \/
在小量代碼編寫時,往往可以通過建立控制台項目(Console Application),建立網站項目(Web Form)等,在其中敲入測試代碼來進行測試。一旦代碼量及邏輯關係變得複雜,這種測試將難以展開,並且不具備可維護性。而且很多功能性的代碼,不能完全脫離整個項目來實現。比如在某WEB項目中有一個類庫,寫了一些MODEL層的方法,為了驗證方法的正確性,若要測試該方法,可能不得不引用項目中大量的模型,介面,以及庫函數。等到編譯可以通過了,卻發現你必須登入才能調用該方法或者您所在的目錄(Directory)根本不具備存取權限,於是又不得不去修改Authorization配置或者添加登入等方法。於是一層層下來,你的測試幾乎涉及的項目的各個角落,而該測試方案又不具備高度的重用性。
下面我們以VS2012為例,來看一下如何在Visual Studio中進行單元測試。
1.首先,右鍵點擊解決方案(Solution)彈出右鍵菜單(Context)。選擇添加(Add) - 新項目(New Project), 在給出的模版中,選擇 Visual C# - Test -Unit Test Project 。

2.得到模版。






3.在測試方法中(此處為預設的TestMethod1,一般修改為 需要測試的方法名+Test )添加自己需要測試的代碼。不過在此之前,首先要引用需要測試的項目以及需要用到的類庫。 此例中,我引用了微軟的MVC4.0架構,以及需要測試的項目中的Controller。在此我測試該Controller的ProductCategories()方法。該方法返回一個ActionResult。測試代碼中有3行,第一行用來執行個體化controller,第二行調用controller的方法。如果僅以該2行進行測試通過,則說明代碼無文法問題,可以和其他各部分配合工作。第三行用了一個斷言來檢測方法返回的result是否為空白。此處我斷言它非空,如果為空白,測試將會失敗報錯。
 
4。測試代碼寫好後, 即可點擊上方菜單Test-Run- AllTests等,來進行測試。
 
測試完畢後。下方會產生結果清單。紅色為未通過的TestCase。若想對其進行DEBUG,可右擊紅色的TestCase,選擇Debug selected Tests。修改後,也可右擊想要重新測試的TestCase,選擇Run Selected Tests.

Visual Studio 中的單元測試 UNIT TEST

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.