TeamCity オンプレミス 2026.1 ヘルプ

NUnit

NUnit ビルドランナーは、TeamCity サーバーで NUnit テストを実行するように設計されています。ただし、.NET ランナーを使用して NUnit テストを起動し、TeamCity でテストレポートを表示することもできます。詳細については、TeamCity での NUnit サポートの記事を参照してください。

レガシーおよび更新された NUnit ランナー

バージョン 2024.07 では、更新された NUnit ランナーが導入されました。従来のランナーと比較すると、.NET ランタイムまたは .NET フレームワークバージョンを選択することはできません。必要に応じて、追加のコマンドラインパラメーターフィールドを使用してこれらの設定を指定します。また、更新されたランナーでは、古い NUnit 2.x.x バージョンはサポートされなくなりました。

バージョン 2024.07 では、更新されたランナーとレガシーランナーの両方が完全に機能し、ビルドステップページから入手できます。次のリリースサイクルでは、レガシーランナーをバンドル解除し、別のプラグインに移行する予定です。完了したら、レガシーランナーを引き続き使用するには、JetBrains マーケットプレイスからこのプラグインを手動でインストールする(英語)必要があります。そのため、プロジェクトを更新された NUnit または通常の .NET ランナーに移行することをお勧めします。

NUnit のインストール

NUnit ビルドランナーを使用するには、次のいずれかのオプションを使用して NUnit NuGet パッケージ(英語)を TeamCity エージェントにインストールする必要があります。

  • 最初のビルドステップで、NuGet パッケージから NUnit をインストールするように指示します。

    例: 次のように、NUnit.Console NuGet パッケージをインストールするコマンドラインビルドステップを追加できます。

    %\teamcity.tool.NuGet.CommandLine.DEFAULT%\tools\nuget.exe install NUnit.Console -version 3.6.0 -o packages

    %teamcity.tool.NuGet.CommandLine.DEFAULT% 文字列は、TeamCity エージェントにインストールされた NuGet への参照です。

    管理 | ツールページでエージェントに NuGet をインストールできます。また、インストール済みの NuGet バージョンのいずれかをデフォルトとしてマークすることもできます。

    その後、%teamcity.tool.NuGet.CommandLine.DEFAULT% パラメーター参照はエージェント上の NuGet インストールパスに適切に解決されるはずです。
    すると、パッケージディレクトリに nunit3-console が表示されます。

  • NUnit をすべてのビルドエージェントの標準の場所に手動でインストールし、NUnit ビルドステップで nunit-console.exe へのパスを構成します。

拡張機能のインストール

バージョン 3.2.0 以降、NUnit では TeamCity エージェントに NUnit.Extension.NUnitProjectLoader 拡張機能がインストールされている必要があります。バージョン 3.4.1 以降、NUnit では TeamCity エージェントに NUnit.Extension.TeamCityEventListener 拡張機能がインストールされている必要があります。
バージョン 3.2.0 および 3.2.1 で拡張機能が見つからない場合、警告なしでビルドが失敗します。バージョン 3.4.1 以降では、拡張機能をインストールするように勧めるメッセージが表示されます。

拡張機能は、NUnit コンソールバージョン 3(英語) NuGet パッケージを使用して、個別のパッケージとして、または一括でインストールできます。

NUnit テスト設定

レガシー NUnit ランナーと更新された NUnit ランナーにはいくつかの違いがあります。

ランナー設定の更新

設定

説明

NUnit コンソール

プレインストールされたコンソールツールを選択するか、ファイル名を含む nunit3-console.exe コンソール実行可能ファイルへのカスタムパスを指定します。

作業ディレクトリ

テストアセンブリのディレクトリと異なる場合は、ビルド作業ディレクトリへのパスを指定します。

アプリケーション構成ファイルへのパス

テストの実行時に使用するアプリケーション構成ファイルへのパスを指定します。パスは、絶対パスまたはチェックアウトディレクトリからの相対パスのいずれかである必要があります。

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

nunit-console.exe に渡す追加のコマンドラインパラメーター(英語)を入力します。

からテストを実行する

NUnit テストが保存されている .NET アセンブリを指定します。複数のエントリはコンマで区切る必要があります。MSBuild ワイルドカードがサポートされています。アセンブリファイルへのパスは、チェックアウトディレクトリに対する絶対パスまたは相対パスにする必要があります。

この例では、TeamCity はすべてのプロジェクトディレクトリでテストアセンブリを検索し、次のテストを実行します。

**\*.dll

ワイルドカードは、チェックアウトディレクトリに対して相対的に指定されます。

からテストを実行しない

テストするアセンブリのリストから除外する .NET アセンブリを指定します。複数のエントリはコンマで区切る必要があります。MSBuild ワイルドカードがサポートされています。アセンブリファイルへのパスは、チェックアウトディレクトリに対する絶対パスまたは相対パスにする必要があります。

この例では、TeamCity は次のディレクトリで指定されたテストを省略します。

**\obj\**\*.dll

ワイルドカードは、チェックアウトディレクトリに対して相対的に指定されます。

カテゴリを含める

実行するテストの NUnit カテゴリを指定します。複数のエントリはコンマで区切る必要があります。
カテゴリ式もサポートされています。コンマ、セミコロン、改行は、グローバルまたは演算として扱われます (式の解析前)。

NUnit 3.0 以降、カテゴリ式はサポートされておらず、NUNit ドキュメント(英語)に従ってコマンドラインから設定する必要があります。

カテゴリを除外

実行するテストから除外する NUnit カテゴリを指定します。複数のエントリはコンマで区切る必要があります。
カテゴリ式もここでサポートされています。コンマ、セミコロン、改行は、グローバルまたは演算として扱われます (式の解析前)。

NUnit 3.0 以降、カテゴリ式はサポートされていません。NUNit ドキュメント(英語)に従って、コマンドラインから設定する必要があります。

テスト失敗のフィードバック時間を短縮

このオプションを使用して、TeamCity に他のテストの前にいくつかのテストを実行するように指示します。

レガシーランナー設定

設定

説明

NUnit ランナー

テストの実行に使用する NUnit バージョンを選択します。使用可能な設定のセットは、選択したバージョンによって異なります。

NUnit コンソール

プレインストールされたコンソールツールを選択するか、ファイル名を含む nunit3-console.exe コンソール実行可能ファイルへのカスタムパスを指定します。

このオプションは、NUnit 3.0 が選択されている場合にのみ使用できます。

作業ディレクトリ

テストアセンブリのディレクトリと異なる場合は、ビルド作業ディレクトリへのパスを指定します。

このオプションは、NUnit 3.0 が選択されている場合にのみ使用できます。

アプリケーション構成ファイルへのパス

テストの実行時に使用するアプリケーション構成ファイルへのパスを指定します。パスは、絶対パスまたはチェックアウトディレクトリからの相対パスのいずれかである必要があります。

このオプションは、NUnit 3.0 が選択されている場合にのみ使用できます。

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

nunit-console.exe に渡す追加のコマンドラインパラメーター(英語)を入力します。

このオプションは、NUnit 3.0 が選択されている場合にのみ使用できます。

.NET ランタイム

プラットフォームドロップダウンメニューから、x64 マシンで目的の実行モードを選択します。サポートされている値は、Auto (MSIL)x86x64 です。

バージョンドロップダウンメニューから、必要な .NET フレームワークバージョンを選択します。サポートされている値は次のとおりです。v2.0v4.0autoNUnit 3.0 が選択されている場合に利用可能
NUnit 3.0 の場合auto を選択した場合、テストはコンパイルされたフレームワークで実行されます。

からテストを実行する

NUnit テストが保存されている .NET アセンブリを指定します。複数のエントリはコンマで区切る必要があります。MSBuild ワイルドカードがサポートされています。アセンブリファイルへのパスは、チェックアウトディレクトリに対する絶対パスまたは相対パスにする必要があります。

この例では、TeamCity はすべてのプロジェクトディレクトリでテストアセンブリを検索し、次のテストを実行します。

**\*.dll

ワイルドカードは、チェックアウトディレクトリに対して相対的に指定されます。

からテストを実行しない

テストするアセンブリのリストから除外する .NET アセンブリを指定します。複数のエントリはコンマで区切る必要があります。MSBuild ワイルドカードがサポートされています。アセンブリファイルへのパスは、チェックアウトディレクトリに対する絶対パスまたは相対パスにする必要があります。

この例では、TeamCity は次のディレクトリで指定されたテストを省略します。

**\obj\**\*.dll

ワイルドカードは、チェックアウトディレクトリに対して相対的に指定されます。

カテゴリを含める

実行するテストの NUnit カテゴリを指定します。複数のエントリはコンマで区切る必要があります。
カテゴリ式もサポートされています。コンマ、セミコロン、改行は、グローバルまたは演算として扱われます (式の解析前)。

NUnit 3.0 以降、カテゴリ式はサポートされておらず、NUNit ドキュメント(英語)に従ってコマンドラインから設定する必要があります。

カテゴリを除外

実行するテストから除外する NUnit カテゴリを指定します。複数のエントリはコンマで区切る必要があります。
カテゴリ式もここでサポートされています。コンマ、セミコロン、改行は、グローバルまたは演算として扱われます (式の解析前)。

NUnit 3.0 以降、カテゴリ式はサポートされていません。NUNit ドキュメント(英語)に従って、コマンドラインから設定する必要があります。

アセンブリごとの実行プロセス

新しいプロセスで各アセンブリを実行する場合は、このオプションを選択します。

このオプションは、NUnit バージョン 3.0 より前のレガシー NUnit ランナーでのみ使用できます。

テスト失敗のフィードバック時間を短縮

このオプションを使用して、TeamCity に他のテストの前にいくつかのテストを実行するように指示します。

NUnit コードカバレッジ

コードカバレッジオプションの構成については、この記事を参照してください。

NUnit 3.x の場合、カバレッジツールとしてサポートされているのは JetBrains dotCover のみです。

2025 年 10 月 27 日

関連ページ:

.NET

TeamCity.NET ビルドステップを使用すると、.NET (Core) および .NET フレームワークを対象とするアプリケーションをビルド、テスト、デプロイできるほか、NuGet パッケージをダウンロードしてプッシュすることもできます。.NET ステップイン構成とパイプライン:クラシックビルド構成では、.NET は、選択したコマンドに応じて設定が変化する単一のビルドステップです。パイプラインでは、これらの各コマンドは個別のビルドステップとして使用できます。エージェント要件:.NET ス...

TeamCity での NUnit サポート

TeamCity でレポートする NUnit テストをセットアップするには、2 つの最も一般的な方法があります。.NET ビルドランナーを使用します。NUnit ビルドランナーを使用します。さらに、TeamCity VSTest アダプターを使用して、別のアプローチを試したり、他のランナー(PowerShell やコマンドラインなど)でテストを実行したりできます。この記事では、TeamCity での NUnit サポートの詳細と、それを確立するための代替アプローチについて説明します。サポートされている...

ビルドステップの設定

ビルドステップは、CI/CD ワークフローの最小単位です。ビルドステップは、全体として実行される一連のアクションを定義します。ビルドステップは、ビルド構成とパイプラインジョブに属します。構成とパイプラインのビルドステップ:TeamCity は、.NET、Maven、NAnt、Xcode などの特定のビルドツール用に設計された幅広いビルドステップを提供します。現在、ビルド構成ではすべてのステップが利用可能です。バージョン 2025.07 で導入された

コマンドライン (スクリプト)

コマンドライン(ビルド構成内)またはスクリプト(パイプライン内)は、TeamCity の中で最も柔軟なビルドステップです。エージェントマシン上で直接コマンドを実行するため、インストールされている任意のツール(cURL、Homebrew、Python、Unreal Engine など)との連携が可能になります。ツール固有の TeamCity ステップの代替として使用することもできます。たとえば、ゴールで Maven ステップを使用する代わりに、スクリプトを実行します。ステップ設定:スクリプトステップ...

JetBrains dotCover

TeamCity は JetBrains dotCover のコンソールランナーにバンドルされています。バンドル版に加えて、JetBrains dotCover コマンドラインツールの別のバージョンをインストールしたり、管理 | ツールページを使用してデフォルトを変更したりできます。ビルドステップの .NET カバレッジセクションで適切なオプションを選択すると、.NET プロジェクトのコードカバレッジを収集し、TeamCityWebUI 内のカバレッジ統計と詳細なカバレッジレポートを表示できます。do...