使用Visual Studio進行單元測試

來源:互聯網
上載者:User

標籤:blog   http   io   ar   os   使用   sp   strong   資料   

原文:使用Visual Studio進行單元測試

一、使用Visual Studio進行單元測試的幾個建議

 

1.先寫單元測試(依我愚見,應該是介面先行,如果有的話) -> 測試失敗 -> 以最小的改動(即編寫實際代碼)使測試通過(而在VS2012中已經不能通過現有項目直接產生測試專案了,我覺得這個功能還是應該保留,微軟總是這副德行,強迫使用者適應他們的產品,但是又不得不適應);

2.不因單元測試而追加功能(代碼),即邏輯不受單元測試影響;

3.改變了代碼的邏輯(增刪改),應及時運行單元測試;

4.在測試方法聲明Attribute —— TestCategory("分類或特徵名");

5.在單元測試項目添加Fakes程式集分離外部依賴(如資料庫訪問,擷取配置資訊等);

6.初始化單元測試類中的成員等資訊,可添加方法並聲明Attribute[TestInitialize](方法需為public);

 

 

二、下面我們以VS2012為例,來看一下如何在Visual Studio中進行單元測試

 

1.首先,右鍵點擊解決方案(Solution)彈出右鍵菜單(Context)

 

選擇添加(Add) - 新項目(New Project), 在給出的模版中,選擇 Visual C# - Test -Unit Test Project 。

 

2.得到模版

 

3.在測試方法中(此處為預設的TestMethod1,一般修改為 需要測試的方法名+Test )添加自己需要測試的代碼

 

例如添加類XmlSerializationTest,代碼如下:

 C# 代碼   複製
   [TestClass]    public class XmlSerializationTest    {        private XmlSerialization serialization;        [TestInitialize]        public void InitTest()        {            this.serialization = new XmlSerialization(@"F:\\usermodel.seri");        }        [TestMethod]        public void TestWriteXml()        {            UserModel user = new UserModel();            bool flag = serialization.WriteXml<UserModel>(user);            Assert.IsTrue(flag);            Assert.IsFalse(serialization.WriteXml<UserModel>(null));        }        [TestMethod]        public void TestReadXml()        {            UserModel user = new UserModel();            user.LoginName = "aa";            serialization.WriteXml<UserModel>(user);            UserModel model = serialization.ReadXml<UserModel>();            Assert.IsNotNull(model);            Assert.AreEqual(user.LoginName, model.LoginName);            //路徑不存在,應返回null            UserModel modelnull = serialization.ReadXml<UserModel>(@"F:\\notexists.seri");            Assert.IsNull(modelnull);        }    }

 

4。測試代碼寫好後, 即可點擊上方菜單Test-Run- AllTests等,來進行測試

 

測試完畢後。下方會產生結果清單。紅色為未通過的TestCase。若想對其進行DEBUG,可右擊紅色的TestCase,選擇Debug selected Tests。修改後,也可右擊想要重新測試的TestCase,選擇Run Selected Tests.

使用Visual Studio進行單元測試

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.