在測試方法中,使用Assert斷言方法對實際值和預期值進行對比,最常用的是預期值和實際值是否相等的斷言。
Assert.AreEqual(6, Count);
還可以通過給方法添加ExpectedException屬性來斷言預期的異常:
[ExpectedException(typeof(ArgumentNullException))]
(2) 系統方法
單元測試運行時,用戶可能需要統一初始一些變量或者測試結束統一釋放占用資源,而不必在每個測試方法中初始化和資源回收。vs單元測試中提供了這樣的屬性
簽。
1. ClassInitialize
如果方法標識了這個屬性。則這個方法在整個測試class運行開始時候運行?梢栽谶@個方法中添加所有測試方法都需要初始化的初始化代碼。
TestContext中包含了單元測試的基本信息。
1 [ClassInitialize()]
2 public static void MyClassInitialize(TestContext testContext){ }
2. ClassCleanup
標識了這個屬性的方法會在這個測試class運行結束的時候運行,和上一個標簽對應。
3. TestInitialize
1 [ClassCleanup()]
2 public static void MyClassCleanup(){ }
除了在整個測試class的開始和結束運行的方法外,還有針對每個測試方法的開始和結束的方法。有時候需要對測試方法用的實例進行必要的初始化,但是需要保證每個方法用的的實例和其他方法中的實例無關的,則需要在每個方法的開始初始化實例,在結束的時候恢復對實例的修改。
標識TestInitialize的方法會在每個測試方法開始之前運行。
1 [TestInitialize()]
2 public void MyTestInitialize() { }
文章來源于領測軟件測試網 http://www.kjueaiud.com/