使用VS 2012自帶的Unit Testing工具進行單元測試是非常友善的。網上關于這方面的例子很多,這篇随筆隻起個人學習筆記之用,是以脈絡不會很清晰。
1、簡單Demo:
待測試類:
測試代碼:
2、測試準備和測試清理工作
如果我想在所有TestMethod執行前進行一些準備工作怎麼辦?答案是使用ClassInitialize。
如果我想在所有TestMethod執行完成後進行一些清理工作怎麼辦?答案是使用ClassCleanup。
如果我想在每個TestMethod執行前進行一些準備工作怎麼辦?答案是使用TestInitialize。
如果我想在每個TestMethod執行完成後進行一些清理工作怎麼辦?答案是使用TestCleanup。
如下:
3、[ExpectedException]
Unit Testing中的attribute除了最基本的TestClass、TestMethod以外,還有一些非常用但是可能有用的attribute。
[ExpectedException(exceptionType: Type]可以用來表明某個測試方法預期抛出某個異常,并且隻有真的抛出異常時才通過測試。比如下面:
4、斷言API
Assert類的靜态方法如下,其中常用的包括AreEqual、AreNotEqual、AreSame、IsNull、IsTrue、Inconclusive和Fail
針對集合類型的斷言方法:
針對字元串類型的斷言方法:
5、針對ASP.NET的單元測試
這裡推薦網上的一個系列部落格,
6、Visual Studio 2012 Fakes架構
7、其他資源(MSDN)