単体テストによる既存のデータベース コードの検証

データベース単体テストを使用すると、データベースのベースラインとなる状態を設定した後、データベース オブジェクトに対してそれ以降行う変更を検証できます。 ベースラインとなる状態を設定するには、データベース プロジェクトを作成しておく必要があります。 次に、テスト プロジェクトを作成し、データベース オブジェクトを実行する一連の Transact-SQL (T-SQL) テストを記述します。 これらのテストを使用することにより、分離開発環境でこれらのオブジェクトが正しく動作することを検証してから、バージョン コントロールにチェックインできます。

データベース オブジェクトに対する変更を検証するテストを作成できます。 また、データベースの関数、トリガ、およびストアド プロシージャをテストする T-SQL コードのスタブを自動的に生成できます。

Dd172118.alert_note(ja-jp,VS.90).gifメモ :

データベース単体テストは、データベース プロジェクトを開かずに作成および実行できます。 ただし、T-SQL スクリプトを生成して特定のデータベース オブジェクトをテストする場合は、テストするオブジェクトを含むデータベース プロジェクトを開いておく必要があります。

作成者本人またはチーム メンバがデータベース スキーマを変更する場合は、これらのテストを使用して、既存の機能が変更によって破損していないかどうかを検証できます。 データベース単体テストを作成して、ソフトウェア開発者が作成するソフトウェア単体テストを補完します。 両方の一連のテストを完了して、アプリケーションの全体的な動作を検証します。

一般的なタスク

次の表に、このシナリオをサポートする一般的なタスクの説明と、それらのタスクを正常に完了する方法の詳細へのリンクを示します。

一般的なタスク

関連する参照先

実習を行う : 入門チュートリアルに従って作業すると、簡単なデータベース単体テストを作成して実行する方法を習得できます。

チュートリアル : データベース単体テストの作成と実行

データベースにテスト データを設定する : データベース オブジェクトに対してテストを実行する前に、データベースにデータを設定する必要があります。 テスト データを作成する最も一般的な方法は、1 つまたは複数のデータ ジェネレータを使用することです。 また、配置後スクリプトの参照データをデータベースに設定したり、データベースのデータを別のデータベースのデータと同期したりできます。

データ ジェネレータを使用してデータベースのテスト データを生成する

データベースの配置時のテーブルへの参照データの追加

1 つ以上のテーブル内のデータと参照データベース内のデータを比較および同期する

データベース単体テストを定義する : 独自のプロジェクトにデータベース単体テストを作成する必要があります。 そのプロジェクトの設定を構成し、各テストに対して 1 つ以上のテスト条件を定義します。

データベース単体テストの作成および定義

データベース単体テストを実行する : 1 つ以上の単体テストを定義して実行し、問題が発生した場合はそれをデバッグして、テストの結果を調べます。

データベースの単体テストを実行する

テストのグループを管理する : 複数のテストを同時に実行することが多い場合には、それらのテストをグループ化しておくことができます。 たとえば、トリガに関するテストや特定のスキーマのすべてのオブジェクトに対するテストが含まれたテスト リストを作成できます。 このようなグループをテスト リストと呼びます。

テスト リストの使用

方法 : テスト リストを作成する

方法 : テストをテスト リストに整理する

テスト プロジェクトとテストをバージョン コントロールにチェックインする : テストを実行してそれらが正常に動作するかどうかを検証した後は、テスト プロジェクトと関連するすべてのファイルをバージョン コントロールにチェックインして、チームのすべてのメンバがテストを実行できるようにする必要があります。

方法 : プロジェクトまたはソリューションをバージョン管理に追加する

[チェックイン] ウィンドウと [保留中の変更] ウィンドウの使用

方法 : 保留中の変更をチェックインする

カスタム テスト条件を定義する : 既定の一連のテスト条件ではテストできない動作をテストする必要がある場合は、カスタム テスト条件を作成することができます。 新しい条件を使用してテストを実行するチームのすべてのメンバに、これらの条件を配布する必要があります。

データベース単体テストのカスタム条件の定義

既存の単体テストを更新する : 以前のバージョンの Database Edition で作成した単体テストがある場合、それらを正常にビルドして実行するには、このリリースへのアップグレードが必要です。

方法 : 以前のリリースの Database Edition のデータベース単体テストをアップグレードする

問題をトラブルシューティングする : データベース単体テストに関する一般的な問題をトラブルシューティングする方法についてさらに詳しく学習できます。

データベース単体テストに関する問題のトラブルシューティング

関連するシナリオ

参照

概念

Database Edition の用語の概要