TeamCity On-Premises 2026.2 Help

Visual Studio テスト

Visual Studio テストビルドランナーは、MSTest フレームワークと VSTest コンソールランナーの機能を統合します。 両方のフレームワークのサポートにより、TeamCity でテストの実行とテスト結果の自動インポートが有効化されます。

Visual Studio テストランナーには、Visual Studio テストエージェントまたは Microsoft Visual Studio がビルドエージェントにインストールされている必要があります。

Visual Studio テストランナー設定

オプション

説明

テストエンジンの種類

テストの実行に使用されるツールを選択します: VSTest または MSTest。

テストエンジンのバージョン

ドロップダウンメニューからツールのバージョンを選択します。 デフォルトでは、使用可能な VSTest および MSTest のインストールが TeamCity によって自動検出されます:

  • MSTest バージョン 2005-2017 がサポートされています

  • VSTest バージョン 2012-2017 がサポートされています

ここでもテストランナーへのカスタムパスを指定できます。 TeamCity パラメーターがサポートされています。

テストファイル名

このフィールドは VSTest では必須です で、MSTest では任意です。
含まれるアセンブリリストでテストを実行するアセンブリへのパスの改行区切りリストを指定します。 対応するフィールドにパスを指定して、テスト実行からアセンブリを除外します。 ワイルドカードがサポートされています。
アセンブリへのパスは、 ビルドチェックアウトディレクトリからの相対パスである必要があります。

実行構成ファイル

(オプション) VSTest(英語) の場合は標準 .runsettings ファイル、 MSTtest(英語) の場合は .testsettings ファイルを指定します。 ファイルブラウザー VCS-browserIcon.png を使用できます。

追加のコマンドラインパラメーター

選択したテストエンジンの追加コマンドラインパラメーターを入力します。
MSTest で実行されるテストは 含まない オンザフライで報告されることに注意してください。
Microsoft Developer Network には、 VSTestMSTest で使用可能なオプションが一覧表示されています。

その他の設定は、テストを実行するエンジンによって異なります。

VSTest 設定

オプション

説明

ターゲットプラットフォーム

プラットフォームのビット数を選択します。 x64 ターゲットプラットフォームを指定すると、 vstest.コンソール プロセスは分離モードで実行されます。

フレームワーク

デフォルトが指定されている場合、vstest.console はターゲットフレームワークを自動的に選択します。 ドロップダウンを使用して .NET プラットフォームを手動で選択することもできます。

テスト名

(省略可能)含まれているアセンブリで検出されたすべてのテストのうち、指定された値と名前が一致するテストのみが実行されます。 複数値の場合は、改行を使用してください。

フィールドが空の場合、すべてのテストが実行されます。 詳細は Microsoft のドキュメント(英語)を参照してください。 以下のオプションと一緒に使用することはできません。

テストケースフィルター

与えられた式に一致するテストを実行します。 詳細は Microsoft のドキュメント(英語)を参照してください。 上記のオプションと一緒に使用することはできません。

単独で実行

独立したプロセスでテストを実行する

リアルタイムのテストレポートを使用する

  • このチェックボックスをオンにすると、カスタム TeamCity テストロガーがリアルタイムレポートに使用されます。 詳細については、 次のセクションを参照してください。

  • 選択しない場合、VSTest は実行後にテストを TeamCity に報告します (カスタムロガーの検出は試行されません)。

カスタムテストロガー

VSTest.コンソール はカスタムロガーをサポートしています。つまり、テストの実行中に発生するイベントを処理するライブラリです。
TeamCity には、リアルタイムのテストレポートを提供するカスタムロガーがあります。 ロガーはエージェントマシンに手動でインストールする必要があります。DLL を VSTest コンソールの 拡張機能 ディレクトリにコピーする必要があるためです。 カスタムロガーをインストールしても、エージェントの再起動は不要です。

カスタムロガーをインストールするには は:

1\. カスタムロガーをダウンロードします。

2\. エージェントマシンでダウンロードしたアーカイブの内容を次のパスに抽出します。

  • VisualStudio 2019 アップデートの場合:

PROGRAM_FILES(x86)\Microsoft Visual Studio\2019<Edition>\Common7\IDE\Extensions\TestPlatform\Extensions
  • VisualStudio 2017 アップデート 5 以降の場合:

PROGRAM_FILES(x86)\Microsoft Visual Studio\2017<Edition>\Common7\IDE\Extensions\TestPlatform\Extensions
  • VisualStudio 2017 のアップデート 4 まで:

PROGRAM_FILES(x86)\Microsoft Visual Studio\2017<Edition>\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
  • VisualStudio 2015 の場合:

PROGRAM_FILES\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
  • VisualStudio 2013 の場合:

PROGRAM_FILES\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions
  • VisualStudio 2012 の場合:

PROGRAM_FILES\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\Extensions

3\. エージェントマシンのコンソールで vstest.コンソール.exe /ロガー一覧表示 を実行して、カスタムロガーが正しくインストールされていることを確認します。 ロガーが正しくインストールされている場合は、FriendlyName が TeamCity のロガーがリストに表示されます。

VSTest.TeamCityLogger.TeamCityLogger Uri: logger://TeamCityLogger FriendlyName: TeamCity{info}

MSTest 設定

オプション

説明

MSTest メタデータ

/テストメタデータ:ファイル 引数の値を入力します。 詳細は Microsoft のドキュメントを参照してください。

実行するメタデータからのテストリスト

テストリストを編集します。 すべての行は /テストリスト:行 引数に変換されます。 詳細は Microsoft のドキュメントを参照してください。

テスト

実行する個別テストのお名前。 このオプションは、一連の /テスト: 引数に変換されます。 詳細は Microsoft のドキュメントを参照してください。

固有

テストセクションで指定されたテストに一意の一致が 1 つ見つかった場合にのみ、テストを実行します。

結果ファイル

/結果ファイル:ファイル名 コマンドライン引数の値を入力します。 パラメーター参照がサポートされています。 ビルドの一時ディレクトリに一時的な \*.trx ファイルを生成するには、 フィールドを空白のままにすることをお勧めします。 ディレクトリはビルド間でクリーンアップされる可能性があることに注意してください。

テスト実行結果を名前付き非デフォルトファイルに保存するには、 /結果ファイル:ファイル名 コマンドライン引数に値を入力します。

  • 指定したパスが相対パスの場合、ビルドチェックアウトディレクトリからの相対パスになります。 指定したファイルがチェックアウトディレクトリにすでに存在する場合、ビルドエージェントはそのファイルの削除を試みます。 エージェントが削除に失敗すると、ビルドは失敗します。
    ビルド一時ディレクトリに *.trx レポートを作成するには、 %\system.teamcity.ビルド.tempDir%。 を使用します

  • 指定されたパスが絶対パスの場合は、「そのまま」使用されます。

2026 年 9 月 11 日