この記事の対象: ✔️ .NET 6 SDK 以降のバージョン
Important
dotnet vstest コマンドは、アセンブリの実行に使用できるdotnet testに置き換えられます。
dotnet テストを参照してください。
名前
dotnet vstest - 指定したアセンブリからテストを実行します。
概要
dotnet vstest [<TEST_FILE_NAMES>] [--Blame] [--Collect:<DATA_COLLECTOR_NAME>]
[--Diag:<PATH_TO_LOG_FILE>] [-e|--Environment:<NAME="VALUE">]
[--Framework:<FRAMEWORK>] [--InIsolation] [-lt|--ListTests:<FILE_NAME>]
[--logger:<LOGGER_URI/FRIENDLY_NAME>] [--Parallel]
[--Platform:<PLATFORM_TYPE>] [--ResultsDirectory:<PATH>]
[--Settings:<SETTINGS_FILE>] [--TestAdapterPath:<PATH>]
[--TestCaseFilter:<EXPRESSION>] [--Tests:<TEST_NAMES>] [[--] <args>...]
dotnet vstest -?|--Help
Description
dotnet vstest コマンドは、VSTest.Consoleコマンド ライン アプリケーションを実行して、自動単体テストを実行します。 この記事のオプションは、 vstest.consoleに転送されます。 コマンド ライン オプションの完全な一覧については、コマンド ライン オプションvstest.console.exe 参照してください。
論争
TEST_FILE_NAMES指定したアセンブリからテストを実行します。 複数のテスト アセンブリ名をスペースで区切ります。 ワイルドカードがサポートされています。
オプション
--Blame変更履歴モードでテストを実行します。 このオプションは、問題のあるテストを分離してテスト ホストがクラッシュする場合に役立ちます。 クラッシュ前のテスト実行の順序をキャプチャする Sequence.xml として、現在のディレクトリに出力ファイルが作成されます。
--Collect:<DATA_COLLECTOR_NAME>テスト実行のデータ コレクターを有効にします。 たとえば、
--Collect:"Code Coverage"は組み込みのVisual Studio コレクターを使用してコード カバレッジを収集し、--Collect:"XPlat Code Coverage"はクロスプラットフォームの Coverlet コレクターを使用します。 詳細については、「Monitor and analyze test run」 (テストの実行のモニターと分析) を参照してください。--Diag:<PATH_TO_LOG_FILE>テスト プラットフォームの詳細ログを有効にします。 ログは、指定されたファイルに書き込まれます。
-e|--Environment:<NAME="VALUE">テスト ホスト プロセスの環境変数の値を設定します。 存在しない場合は変数を作成し、存在する場合はオーバーライドします。 このオプションを使用すると、分離されたプロセスでテストが強制的に実行されます。 複数の変数を設定するには、このオプションを複数回指定します。
--Framework:<FRAMEWORK>テストの実行に使用されるターゲット .NET Framework バージョン。 有効な値の例として、
.NETFramework,Version=v7.0があります。 サポートされているその他の値は、Framework40、Framework45、FrameworkCore10、およびFrameworkUap10です。--InIsolation分離されたプロセスでテストを実行します。 これにより、 vstest.console.exe テストのエラーでプロセスが停止する可能性は低くなりますが、テストの実行速度が低下する可能性があります。
-lt|--ListTests:<FILE_NAME>特定のテスト コンテナーから検出されたすべてのテストを一覧表示します。
--logger:<LOGGER_URI/FRIENDLY_NAME>テスト結果のロガーを指定します。
Team Foundation Server にテスト結果を発行するには、
TfsPublisherロガー プロバイダーを使用します。/logger:TfsPublisher; Collection=<team project collection url>; BuildName=<build name>; TeamProject=<team project name> [;Platform=<Defaults to "Any CPU">] [;Flavor=<Defaults to "Debug">] [;RunTitle=<title>]Visual Studio テスト結果ファイル (TRX) に結果をログに記録するには、
trxロガー プロバイダーを使用します。 このスイッチは、指定されたログ ファイル名を持つファイルをテスト結果ディレクトリに作成します。LogFileName指定されていない場合は、テスト結果を保持する一意のファイル名が作成されます。/logger:trx [;LogFileName=<Defaults to unique file name>]
--Parallelテストを並列で実行します。 既定では、マシン上で使用可能なすべてのコアを使用できます。
MaxCpuCountファイルのRunConfigurationノードの下に プロパティを設定して、コアの明示的な数を指定します。--Platform:<PLATFORM_TYPE>テストの実行に使用されるターゲット プラットフォーム アーキテクチャ。 有効な値は、
x86、x64、ARM、ARM64、S390x、Ppc64le、RiscV64、およびLoongArch64です。--ResultsDirectory:<PATH>テスト結果ディレクトリが存在しない場合は、指定されたパスに作成されます。
--Settings:<SETTINGS_FILE>テストの実行時に使用する設定。
--TestAdapterPath:<PATH>テストの実行で、特定のパス (ある場合) のカスタム テスト アダプターを使用します。
--TestCaseFilter:<EXPRESSION>指定された式に一致するテストを実行します。
<EXPRESSION>は<property>Operator<value>[|&<EXPRESSION>]形式で、演算子は=、!=、または~のいずれかです。 演算子~には 'contains' セマンティクスがあり、DisplayNameなどの文字列プロパティに適用できます。 かっこ()は、部分式をグループ化するために使用されます。 詳細については、「 TestCase フィルター」を参照してください。--Tests:<TEST_NAMES>指定された値と一致する名前でテストを実行します。 コンマを使用して複数の値を区切ります。
-?|--Helpコマンドの短いヘルプを出力します。
@<file>その他のオプションについては、応答ファイルを読み取ります。
argsアダプターに渡す追加の引数を指定します。 引数は、フォーム
<n>=<v>の名前と値のペアとして指定されます。ここで、<n>は引数名、<v>は引数の値です。 複数の引数を指定する場合は、空白で区切ります。
例示
mytestproject.dllでテスト を 実行する:
dotnet vstest mytestproject.dll
mytestproject.dllでテスト を 実行し、カスタム名を持つカスタム フォルダーにエクスポートします。
dotnet vstest mytestproject.dll --logger:"trx;LogFileName=custom_file_name.trx" --ResultsDirectory:custom/file/path
mytestproject.dllとmyothertestproject.exe でテストを実行します。
dotnet vstest mytestproject.dll myothertestproject.exe
TestMethod1テストを実行します。
dotnet vstest /Tests:TestMethod1
TestMethod1テストとTestMethod2テストを実行します。
dotnet vstest /Tests:TestMethod1,TestMethod2
こちらも参照ください
-
VSTest.Console.exe コマンドライン オプション (Microsoft Learn) -
VSTest.Console.exeツールの公式Microsoft Learn リファレンス (dotnet vstestが公開していないオプションを含む)。 安定したキュレーションされたドキュメントについては、ここから始めます。 -
VSTest.Console.exe コマンドライン オプション (microsoft/vstest リポジトリ) -
microsoft/vstestリポジトリ内のソース派生参照。 最も up-to-date オプションの詳細と内部スイッチに加えて、関連するランセット、フィルター処理、診断に関するドキュメントへのリンクに使用します。 -
VSTest 環境変数 (microsoft/vstest) - VSTest とテスト ホストが認識する環境変数 (
VSTEST_DUMP_FORCEPROCDUMP、.NET SDK がvstest.console起動時に設定するVSTEST_DOTNET_ROOT_*変数など)。
.NET