天天看點

VS2010(2012)中使用Unit Testing進行單元測試

使用VS 2012自帶的Unit Testing工具進行單元測試是非常友善的。網上關于這方面的例子很多,這篇随筆隻起個人學習筆記之用,是以脈絡不會很清晰。

1、簡單Demo:

    待測試類:

VS2010(2012)中使用Unit Testing進行單元測試
VS2010(2012)中使用Unit Testing進行單元測試

   測試代碼:

VS2010(2012)中使用Unit Testing進行單元測試
VS2010(2012)中使用Unit Testing進行單元測試

2、測試準備和測試清理工作

    如果我想在所有TestMethod執行前進行一些準備工作怎麼辦?答案是使用ClassInitialize。

    如果我想在所有TestMethod執行完成後進行一些清理工作怎麼辦?答案是使用ClassCleanup。

    如果我想在每個TestMethod執行前進行一些準備工作怎麼辦?答案是使用TestInitialize。

    如果我想在每個TestMethod執行完成後進行一些清理工作怎麼辦?答案是使用TestCleanup。

    如下:

VS2010(2012)中使用Unit Testing進行單元測試
VS2010(2012)中使用Unit Testing進行單元測試

3、[ExpectedException]

    Unit Testing中的attribute除了最基本的TestClass、TestMethod以外,還有一些非常用但是可能有用的attribute。

    [ExpectedException(exceptionType: Type]可以用來表明某個測試方法預期抛出某個異常,并且隻有真的抛出異常時才通過測試。比如下面:

4、斷言API

    Assert類的靜态方法如下,其中常用的包括AreEqual、AreNotEqual、AreSame、IsNull、IsTrue、Inconclusive和Fail

VS2010(2012)中使用Unit Testing進行單元測試

   針對集合類型的斷言方法:

VS2010(2012)中使用Unit Testing進行單元測試

   針對字元串類型的斷言方法:

VS2010(2012)中使用Unit Testing進行單元測試

5、針對ASP.NET的單元測試

    這裡推薦網上的一個系列部落格,

6、Visual Studio 2012 Fakes架構

7、其他資源(MSDN)

繼續閱讀