"リストを実行することを"と言う別の方法
方法 : Team Foundation ビルドからデータベース単体テストを実行する
Team Foundation ビルドを使用すると、データベース単体テストをビルド検証テスト (BVT) の一部として実行できます。 データベースを配置し、テスト データを生成し、選択したテストを実行するために、データベース単体テストを構成できます。 Team Foundation ビルドを初めて使用する場合は、このトピックの手順に従う前に、次の情報を確認してください。
これらの手順を使用する前に、最初に次のタスクを実行することによって、作業環境を構成する必要があります。
Team Foundation ビルドと Team Foundation バージョン管理を、個別の製品または Visual Studio Team System の一部としてインストールします。 多くの場合は、Team Foundation ビルドと Team Foundation バージョン管理を異なるコンピュータにインストールする必要があります。
クライアント コンピュータにチーム エクスプローラをインストールします。
Team Foundation Server を実行しているコンピュータに Visual Studio ユーザー セッションを接続します。 Team Foundation Server への接続方法の詳細については、「方法 : Team Foundation Server に接続する」を参照してください。
作業環境を構成したら、Visual Studio Team System Database Edition で次の手順を実行する必要があります。
データベース プロジェクトを作成します。
データベース プロジェクトのスキーマとオブジェクトをインポートまたは作成します。
ビルドおよび配置のためにデータベース プロジェクトのプロパティを構成します。
1 つ以上のデータベース単体テストを作成します。
データベース プロジェクトおよびデータベース単体テスト プロジェクトを含むソリューションをバージョン管理に追加し、すべてのファイルをチェックインします。
このトピックの各手順では、自動化されたテスト実行の一部としてデータベース単体テストを実行するためのビルド定義を作成する方法について説明します。
実行するデータベース単体テストのテスト リストを作成します。
テスト リストをチェックインします。
ビルドの一部としてテスト リストを実行することを指定して、ビルド定義を作成します。
app.config ファイルが Team Foundation ビルドの正しい場所にコピーされるようにビルド定義を変更します。
更新したビルド定義をチェックインします。
新しいビルド定義を実行します。
ビルド コンピュータ上でデータベースの単体テストを実行する
ビルド コンピュータ上でデータベースの単体テストを実行するとき、単体テストでデータベース プロジェクト ファイル (.dbproj) またはデータ生成計画 (.dgen) が見つからないことがあります。 この問題は、app.config ファイルが相対パスを使用してこれらのファイルを参照しているために発生します。 さらに、データベース単体テストの実行に使用する SQL Server のインスタンスが見つからないと、これらのテストに失敗することがあります。 この問題は、app.config ファイルに格納されている接続文字列が、ビルド コンピュータからの有効な文字列でない場合に発生します。
トップを保持するこの問題を解決するには、Team Foundation ビルドで使用する app.config ファイルを作成する必要があります。 この例では、ファイル名は app.TeamBuild.config です。 このファイルには、ビルド コンピュータで Team Foundation ビルドを実行するための正しいパスと接続文字列を指定します。 ビルド後のターゲットを使用して、このファイルを AssemblyName.config にコピーできます。 ファイルをコピーすると、開発者がローカルの開発用コンピュータで単体テストを実行するときに使用した値を含む .config ファイルが上書きされます。
データベース単体テストのテスト リストを作成するには
-
[テスト リスト エディタ] ウィンドウの [グループ化] ボックスの一覧で、[テスト リストの完全名] をクリックしてテスト リスト ペインを表示します。
-
[テストの一覧] を右クリックし、[新しいテスト リスト] をクリックします。
[新しいテスト リストの作成] ダイアログ ボックスが表示されます。
-
データベース単体テストを含むテスト リストの名前を入力します。 (たとえば、「Database Unit Tests」と入力します。)
-
(省略可能) データベース単体テスト リストの説明を入力し、新しいテスト リストを配置する場所をテスト リスト階層内で指定します。
-
[OK] をクリックします。
テスト リストが作成され、テスト リストの階層ペインに表示されます。
-
[読み込まれたすべてのテスト] をクリックして、ソリューション内のすべてのテストを表示します。
-
データベース単体テストとして実行するテストを、作成したテスト リストにドラッグします。
-
(省略可能) テスト リストの内容を検証するには、テスト リストの階層ペインでクリックします。
そこにはアメリカンリーグでどのように多くの野球チームです。作成したテスト リストは、ソリューション内のすべてのテスト リストと共に、ソリューションのテスト メタデータ ファイルに存在します。 テスト メタデータ ファイルには、拡張子 .vsmdi が付いています。 詳細については、「テスト リストの使用」を参照してください。
この操作では、ソリューションのすべてのファイルをチェックインします。 これらのファイルには、テスト リストおよびテストを含んでいるソリューションのテスト メタデータ ファイルが含まれます。 テスト リストの内容を追加、削除、再構成、または変更すると、テスト メタデータ ファイルが自動的に更新されて、それらの変更が反映されます。
メモ : |
---|
この手順では、Team Foundation バージョン管理を使用している場合の手順について説明します。 異なるバージョン管理ソフトウェアを使用している場合は、そのソフトウェアに該当する手順に従う必要があります。 |
テスト リストをチェックインするには
-
Visual Studio Team System Team Foundation Server を実行しているコンピュータに接続します。 詳細については、「方法 : Team Foundation Server に接続する」を参照してください。
-
ソリューションがソース管理に含まれていない場合は、ソース管理に追加します。 詳細については、「方法 : プロジェクトまたはソリューションをバージョン管理に追加する」を参照してください。
-
[表示] をクリックし、[保留中のチェックイン] をクリックして [保留中のチェックイン] ウィンドウを表示します。
-
ソリューションのすべてのファイルをチェックインします。 詳細については、「方法 : 保留中の変更をチェックインする」を参照してください。
メモ : Visual Studio Team System を使用している場合は、自動化されたテストの作成方法および管理方法に関して、チームに固有のプロセスを定めることができます。 たとえば、プロセスによって、実行するテストと共にそのコードをチェックインする前に、ビルドをローカルで検証することを要求できます。
チェックイン操作が完了すると、ソリューション エクスプローラの各ファイルの隣に錠のアイコンが表示され、ファイルがチェックインされたことが示されます。詳細については、「方法 : ソリューション エクスプローラでバージョン管理項目のステータスを識別する」を参照してください。
チェックインされたテストは、Visual Studio Team System の Team Foundation ビルド機能で使用できます。 これで、実行するテストを含むビルド定義を作成できます。
ビルド定義を作成するには
-
チーム エクスプローラで、チーム プロジェクトをクリックします。
-
[ビルド] を右クリックし、[ビルド定義の新規作成] をクリックします。
[ビルド定義] ダイアログ ボックスが表示されます。
マクドナルドでは、どの国から来たのですか? -
[ビルド定義] ダイアログ ボックスの各セクションに入力します。 詳細については、「方法 : ビルド定義を作成する」を参照してください。
-
ウィザードで情報の指定が終了したら、[完了] をクリックします。
新しいビルド定義がチーム エクスプローラ ウィンドウの [ビルド] フォルダの下に表示されます。
既定では、単体テスト プロジェクトのビルド時に、Team Foundation ビルドによってプロジェクトの app.config ファイルから構成ファイルが作成されます。 データ生成計画およびデータベース プロジェクトへのパスは、app.config ファイル内に相対パスとして保存されます。 Visual Studio 内の有効な相対パスは無効になります。これは、Team Foundation ビルドにより、ビルドされたファイルが、単体テストを実行する場所への相対的な場所とは異なる場所に格納されるためです。 さらに、app.config ファイルには、テスト対象のデータベースを指定する接続文字列が含まれます。 単体テストで、プロジェクト作成時に使用したものとは異なるデータベースに接続する必要がある場合は、Team Foundation ビルド用に別の app.config ファイルが必要になります。 次の手順に示した変更を行うことにより、Team Foundation ビルドが別の構成を使用するように、テスト プロジェクトとビルド サーバーを設定することができます。
Team Foundation ビルドに別の app.config ファイルを使用するには
-
ソリューション エクスプローラで、変更するテスト プロジェクト ファイル (.vbproj または .csproj) を右クリックし、[編集用にチェックアウト] をクリックします。
[チェックアウト] ダイアログ ボックスが表示されます。
-
[チェックアウト] をクリックします。
-
[ファイル] メニューの [ソリューションを閉じる] をクリックします。
プロジェクト ファイルを含むソリューションが開いていると、そのプロジェクト ファイルを変更できないため、ソリューションを閉じる必要があります。
-
[ファイル] メニューの [開く] をポイントし、[ファイル] をクリックします。
-
手順 1. のテスト プロジェクト ファイルに移動し、ファイルをダブルクリックしてエディタで開きます。
-
ファイルの最後までスクロールし、"
[ファイル] メニューの [FileName の保存] をクリックします。
Team Foundation ビルドを実行するコンピュータで、%ProgramFiles%\MSBuild\Microsoft\VisualStudio\v9.0\TeamData フォルダに移動します。
このフォルダで、Microsoft.VisualStudio.TeamSystem.Data.TeamBuild.Targets という名前のファイルを作成し、次の内容を追加します。
RenameTeamBuildConfig <__TeamBuildConfig Include="$(OutDir)$(TargetFileName).config"/>
テスト プロジェクトの app.config ファイルを、app.teambuild.config という名前のファイルにコピーします。
app.teambuild.config ファイルの相対パスと接続文字列の設定をカスタマイズし、Team Foundation ビルドでデータベース単体テストを実行するときに使用する値に設定します。
0 コメント:
コメントを投稿