方法 : テストの実行をスケジュールする

更新 : 2007 年 11 月

Visual Studio Team System のテスト ツールには、テストを後で実行するためにスケジュールする、明示的な機能は含まれていません。ただし、テストをテスト リストとテスト メタデータ ファイルとして編成して、他の方法でテストの実行をスケジュールすることができます。このトピックでは、Windows タスク スケジューラを使用して、テストの実行を開始するバッチ ファイルを実行する方法について説明します。

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

テストの実行は、Team Foundation ビルドを使用してビルドの種類を作成する場合に指定できる選択肢の 1 つです。指定すると、tbuild コマンドを使用してそのビルドの種類をコマンド ラインから実行できます。以下の手順と同様の方法で、ビルドの開始に tbuild コマンドを使用するバッチ ファイルを作成し、そのバッチ ファイルを Windows タスク スケジューラを使用して定期的なスケジュールで実行できます。詳細については、「方法 : ビルド定義を作成する」を参照してください。

Windows タスク スケジューラを使用したテストのスケジュール

必要条件 : Team Foundation バージョン管理を使用しており、ソース ファイルの最新バージョンのみをテストする場合は、代わりにチーム エクスプローラが必要になり、Team Foundation Server への接続が必要になります。また、Team Foundation Server コマンド プロンプト コマンドが有効になっていること、およびワークスペースが確立済みであることも必要です。詳細については、「チュートリアル : コマンド ラインからの Team Foundation バージョン管理の操作」を参照してください。

この手順は 2 つの部分に分かれています。最初の部分では、ソリューション ワークスペースを同期するバッチ ファイルを作成し、ソリューション内でテストを実行します。2 番目の部分では、バッチ ファイルを所定の間隔で実行するようスケジュールします。

テストを実行するバッチ ファイルを作成するには

  1. 実行するテストを作成します。オプションで、テストをテスト リストに追加します。詳細については、「テスト リストの使用」を参照してください。

    実行するテストを含むテスト リストと、そのテスト リストを含むテスト メタデータ ファイルを控えておきます。ソリューション エクスプローラに、ソリューションのテスト メタデータ ファイルが表示されます。ファイルの拡張子は .vsmdi です。テスト リストとテスト メタデータ ファイルの詳細については、「テストの再利用」を参照してください。

  2. 目的のテストを実行する MSTest.exe コマンドを含むバッチ ファイルを作成します。MSTest.exe コマンドの詳細については、「MSTest.exe コマンド ライン オプション」を参照してください。

    バッチ ファイルは次のようなタスクを実行します。

    1. テストするプロジェクトのフォルダへ移動します。

      cd <ソリューション フォルダ>

      通常、ソリューション フォルダは Visual Studio インストールの Projects フォルダの下にあります。例 : C:\Documents and Settings\<ユーザー名>\My Documents\Visual Studio 2005\Projects\<ソリューション名>\

    2. (省略可能) ソース ファイルとテスト ファイルの最新バージョンを入手します。

      次のコマンドは、現在のサブツリーのみを同期します。

      tf get ./r

      または、次のコマンドを使用します。これは、ソリューション ワークスペース全体を同期します。

      tf get

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

      この手順は、Team Foundation バージョン管理を使用しており、ソース ファイルの最新バージョンだけをテストする場合にのみ必要です。この同期手順を使用すると、マージによる競合が発生してユーザーによる操作が必要となったり、ローカルな変更に対してビルド エラーが発生したりする可能性があるので、実施は慎重に検討する必要があります。一般的には、開発またはテストの担当者が、コンピュータ上に存在しているインストールしたビルドのソース ファイルをテストするために、開発用またはテスト用のコンピュータで、テストの実行を夜間にスケジュールします。

    3. ソリューションを再ビルドします。

      msbuild <ソリューション名>.sln

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

      テスト パスに複数のソリューションを含める場合は、手順 2b と 2c を繰り返す必要があります。

    4. テストを実行します。

      次のコマンドは、特定のテスト メタデータ ファイル 1 つについてテストを実行します。テスト リストを指定するには、/testlist オプションを /testmetadata オプションと組み合わせて使用します。

      MSTest /testcontainer:<テスト プロジェクト名>\bin\debug\TestProject.dll

      または、次のコマンドを使用して、テスト メタデータ ファイル全体についてテストを実行します。

      MSTest /testmetadata:TestProject1.vsmdi

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

      MSTest コマンドをバッチ ファイルに追加する前に、コマンドをコマンド ラインで実行して、テストが予期したとおりに実行されるかどうかを検証してください。

      テスト メタデータ ファイルとテスト リストの詳細については、「テストの再利用」を参照してください。

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

      ローカル ワークスペースに保留中の変更がある場合は、tf コマンドを実行しても、該当するファイルに対する変更は同期されません。競合が発生すると、ダイアログ ボックスが表示されます。ダイアログ ボックスとエラー メッセージを非表示にするには、/noprompt オプションを tf.exe get コマンドで使用します。マージによる競合が発生した場合は、ファイルのローカル コピーが保持されます。

  3. (省略可能) テストの実行結果を発行します。発行するには、/publish* オプションを MSTest.exe コマンドに追加します。詳細については、「テスト結果を発行するためのコマンド ライン オプション」を参照してください。

  4. バッチ ファイルをハード ディスクに保存し、場所と名前を控えておきます。

  5. (推奨) スクリプトを実行およびデバッグし、テストが実行されることを確認します。

    これで、テストを実行するバッチ ファイルができました。次に、それが定期的に実行されるよう、次の手順に従って Windows タスク スケジューラをプログラムします。

バッチ ファイルが定期的に実行されるようスケジュールするには

  1. [スタート] ボタンをクリックし、[コントロール パネル] をクリックします。

  2. [コントロール パネル] で、[タスク] をダブルクリックします。

    [タスク] ウィンドウが開きます。

  3. [スケジュールされたタスクの追加] をダブルクリックします。

    タスク ウィザードが開きます。

  4. [次へ] をクリックし、[参照] をクリックします。

    [実行するプログラムを選択してください] ダイアログ ボックスが開きます。

  5. 作成したバッチ ファイルが存在するフォルダに移動します。

  6. バッチ ファイルをクリックし、[開く] をクリックします。

  7. (省略可能) 作成するタスクの名前を変更します。

  8. [このタスクの実行] で、バッチ ファイルを実行する頻度を選択し、[次へ] をクリックします。

  9. 選択した頻度によっては、開始時刻や開始日など、バッチ ファイルの実行に関する詳細を次のページで入力する必要があります。作業が終了したら、[次へ] をクリックします。

  10. ユーザー名とパスワードを入力して、[次へ] をクリックします。

  11. [完了] をクリックします。

    新しいタスクが [タスク] ウィンドウに表示されます。

参照

処理手順

方法 : ビルド定義を作成する

概念

MSTest.exe コマンド ライン オプション

テストの再利用

参照

Get コマンド

その他の技術情報

Tf コマンド ライン ユーティリティのコマンド