使用單元測試驗證資料庫程式碼

您可以使用「資料庫單元測試」(Database Unit Test) 來建立資料庫的基準狀態,然後驗證您對「資料庫物件」(Database Object) 所做的任何後續變更。 您必須先建立「資料庫專案」(Database Project),然後才能建立基準狀態。 接著,您就可以建立測試專案,並且撰寫幾組執行資料庫物件的 Transact-SQL 測試。 您可以先在「隔離的開發環境」(Isolated Development Environment) 中使用這些測試來驗證這些物件是否正確運作,然後再將它們簽入版本控制中。

您可以建立測試,以便驗證對任何資料庫物件所做的變更。 此外,您可以自動產生測試資料庫函式、觸發程序和預存程序的 Transact-SQL 程式碼片段。

注意事項注意事項

您可以建立及執行資料庫單元測試,而不需開啟「資料庫專案」(Database Project)。 但是,如果您想要自動產生測試指令碼來測試專案中的特定資料庫物件,您必須開啟包含您要測試之物件的資料庫專案。

當您或小組成員變更資料庫「結構描述」(Schema) 時,您可以使用這些測試來驗證這些變更是否已中斷現有的功能。 您可以建立資料庫單元測試來補充軟體開發人員所建立的軟體單元測試。 您必須完成這兩組測試,才能驗證應用程式的整體行為。

您的單元測試可以驗證程序是否成功 (預期會成功),以及程序是否失敗 (預期會失敗)。 測試是否發生適當失敗的作業稱為負面測試。

重要事項重要事項

您在 Visual Studio Premium 和 Visual Studio Ultimate 中建立、修改和執行資料庫單元測試。 在 Visual Studio 2010 Professional 中,您可以執行資料庫單元測試,但無法在設計工具中建立或修改測試。

一般工作

下表列出支援此案例之一般工作的說明,以及詳細資訊的連結,這些資訊可幫助您成功完成這些工作。

一般工作

支援內容

獲得實務練習:您可以執行入門逐步解說,開始熟悉如何建立及執行簡單的資料庫單元測試。 這個逐步解說包含負面資料庫單元測試的範例。

將測試資料填入您的資料庫:您必須先將資料填入資料庫,然後才能針對資料庫物件執行測試。 建立測試資料最常見的方式是使用一個或多個資料產生器。 您也可以在「部署後指令碼」(Post-Deployment Script) 中,將參考資料填入資料庫,或是同步處理您資料庫的資料與其他資料庫的資料。

定義資料庫單元測試:您必須在自己的專案中建立資料庫單元測試。 您可以針對該專案進行設定,並且針對每項測試定義一或多個「測試條件」(Test Condition)。

執行資料庫單元測試:定義一個或多個單元測試之後,您就可以執行這些測試、偵錯任何問題,並檢查您的測試結果。

管理測試群組:如果測試通常應該同時執行,您就可以將測試組織成群組。 雖然仍然支援測試清單,不過對於新的測試群組而言,您應該考慮改用測試分類。 例如,您可能會針對觸發程序或特定「結構描述」(Schema) 中所有物件的測試建立測試分類。

將您的測試專案和測試簽入版本控制中:在您執行測試並驗證它們是否正確運作之後,就應該將測試專案和所有相關聯的檔案簽入版本控制中,以便讓所有小組成員執行測試。

定義自訂測試條件:如果您必須針對預設測試條件集並未涵蓋的行為進行測試,就可以建立自訂測試條件。 您必須將這些條件散發給所有想要執行使用新條件之測試的小組成員。

更新現有的單元測試:如果您擁有在舊版 Visual Studio 中建立的單元測試,就必須先升級它們,然後它們才會順利搭配這個版本建置並執行。

注意事項注意事項
如果您開啟包含來自舊版 Visual Studio 之資料庫專案和資料庫單元測試專案的方案,系統就會提示您升級這些專案。如果您開啟只包含資料庫單元測試專案的方案,則必須手動升級該專案。

疑難排解問題:您可以了解如何透過資料庫單元測試疑難排解常見的問題。

相關案例