共用方式為


使用 Assert 類別進行單元測試

使用 Microsoft.VisualStudio.TestTools.UnitTesting 命名空間的 Assert 類別來驗證特定功能。 單元測試方法會執行應用程式程式碼中方法的程式碼,但是只有在包含 Assert 陳述式時,才會報告程式碼行為的正確性。

Assert 的類型

Microsoft.VisualStudio.TestTools.UnitTesting 命名空間提供數種 Assert 類別。

在測試方法中,您可以呼叫 Microsoft.VisualStudio.TestTools.UnitTesting.Assert 類別的任何方法,例如 Assert.AreEqualAssert 類別有許多方法可供選擇,且這些方法很多都有數個多載。

比較字串與集合

使用 CollectionAssert 類別來比較物件集合,或確認集合的狀態。

使用 StringAssert 類別來比較並檢查字串。 這個類別包含各種實用的方法,例如 StringAssert.ContainsStringAssert.Matches,以及 StringAssert.StartsWith

例外狀況

每當測試失敗時,便會擲回 AssertFailedException 例外狀況。 測試在逾時、擲回未預期的例外狀況,或包含產生失敗結果的 Assert 陳述式時,便會失敗。

每當測試所產生的結果不明,便會擲回 AssertInconclusiveException。 一般而言,您會將 Assert.Inconclusive 陳述式新增至您仍在處理的測試,以表示它尚未做好執行準備。

注意

另一種方法就是將尚未準備好要執行的測試以 IgnoreAttribute 屬性標示。 不過,此方法的缺點在於您無法輕鬆地就您未實作的測試數量產生報告。

如果您撰寫新的 Assert 例外狀況類別,繼承基底類別 UnitTestAssertException可使它更輕鬆地將例外狀況識別為判斷提示失敗,而不是從您的測試或生產環境程式碼擲回未預期的例外狀況。

若要確認您預期由應用程式程式碼中之方法擲回的例外狀況,確實是由該方法擲回時,請使用 Assert.ThrowsException 方法。

另請參閱