コマンドラインインターフェース
コマンド
vitest
現在のディレクトリでVitestを起動します。開発環境ではウォッチモードに入り、CI環境(または非対話型ターミナル)では自動的に実行モードに切り替わります。
実行するテストファイルをフィルタリングするための追加引数を指定できます。例:
vitest foobar
このフィルターは文字列の包含関係のみをチェックし、正規表現やグロブパターンはサポートしていません(Vitestがフィルターを受け取る前にターミナルが処理する場合を除きます)。
Vitest 3以降、ファイル名と行番号でテストを指定することも可能です。
$ vitest basic/foo.test.ts:10
WARNING
この機能を使用するには、Vitestが完全なファイル名を必要とすることに注意してください。ファイル名は現在の作業ディレクトリからの相対パス、または絶対ファイルパスのいずれかです。
$ vitest basic/foo.js:10 # ✅
$ vitest ./basic/foo.js:10 # ✅
$ vitest /users/project/basic/foo.js:10 # ✅
$ vitest foo:10 # ❌
$ vitest ./basic/foo:10 # ❌
現時点では、Vitestは行範囲指定をサポートしていません。
$ vitest basic/foo.test.ts:10, basic/foo.test.ts:25 # ✅
$ vitest basic/foo.test.ts:10-25 # ❌
vitest run
ウォッチモードなしでテストを一度だけ実行します。
vitest watch
すべてのテストスイートを実行し、変更を監視してテストを自動再実行します。引数なしでvitest
を実行するのと同じです。CIまたはstdinがTTYでない場合(非対話型環境)はvitest run
にフォールバックされます。
vitest dev
vitest watch
のエイリアスです。
vitest related
指定されたソースファイルに関連するテストのみを実行します。静的インポート(例:import('./index.js')
やimport index from './index.js'
)には対応していますが、動的インポート(例:import(filepath)
)には対応していません。すべてのファイルはルートフォルダーからの相対パスである必要があります。
lint-staged
やCIセットアップでの使用に便利です。
vitest related /src/index.ts /src/hello-world.js
TIP
Vitestはデフォルトで監視モードが有効になっていることを忘れないでください。lint-staged
のようなツールを使用している場合は、コマンドが正常に終了するように--run
オプションも渡す必要があります。
export default {
'*.{js,ts}': 'vitest related --run',
};
vitest bench
パフォーマンス結果を比較するベンチマークテストのみを実行します。
vitest init
vitest init <name>
はプロジェクト設定のセットアップに使用できます。現時点では、browser
の値のみをサポートしています。
vitest init browser
vitest list
vitest list
コマンドは、一致するすべてのテストのリストを出力するために、すべてのvitest
オプションを継承します。このコマンドはreporters
オプションを無視します。デフォルトでは、ファイルフィルターと名前パターンに一致するすべてのテストの名前を表示します。
vitest list filename.spec.ts -t="some-test"
describe > some-test
describe > some-test > test 1
describe > some-test > test 2
--json
フラグを渡すと、テストをJSON形式で出力したり、別のファイルに保存したりできます。
vitest list filename.spec.ts -t="some-test" --json=./file.json
--json
フラグに値が指定されない場合、JSONはstdoutに出力されます。
--filesOnly
フラグを渡すと、テストファイルのみを出力できます。
vitest list --filesOnly
tests/test1.test.ts
tests/test2.test.ts
オプション
TIP
VitestはCLI引数にキャメルケースとケバブケースの両方をサポートしています。例えば、--passWithNoTests
と--pass-with-no-tests
はどちらも機能します(--no-color
と--inspect-brk
は例外です)。
Vitestは値の指定方法も複数サポートしています。--reporter dot
と--reporter=dot
はどちらも有効です。
オプションが値の配列をサポートしている場合、オプションを複数回渡す必要があります。
vitest --reporter=dot --reporter=default
ブール値オプションはno-
プレフィックスで否定できます。値をfalse
として指定することも機能します。
vitest --no-api
vitest --api=false
root
- CLI:
-r, --root <path>
- Config: root
ルートディレクトリを指定します。
config
- CLI:
-c, --config <path>
設定ファイルのパスを指定します。
update
- CLI:
-u, --update
- Config: update
スナップショットを更新します。
watch
- CLI:
-w, --watch
- Config: watch
ウォッチモードを有効にします。
testNamePattern
- CLI:
-t, --testNamePattern <pattern>
- Config: testNamePattern
指定された正規表現パターンに完全に一致する名前のテストを実行します。
dir
- CLI:
--dir <path>
- Config: dir
テストファイルをスキャンする基準ディレクトリを指定します。
ui
- CLI:
--ui
- Config: ui
UIを有効にします。
open
- CLI:
--open
- Config: open
UIを自動的に開きます (デフォルト: !process.env.CI
)。
api.port
- CLI:
--api.port [port]
サーバーポートを指定します。指定したポートが既に使用されている場合、Vitestは自動的に次に利用可能なポートを試行するため、実際にサーバーがリッスンするポートとは異なる場合があります。true
に設定すると、51204
が使用されます。
api.host
- CLI:
--api.host [host]
サーバーがリッスンするIPアドレスを指定します。LANおよびパブリックアドレスを含むすべてのIPアドレスでリッスンするには、0.0.0.0
またはtrue
に設定してください。
api.strictPort
- CLI:
--api.strictPort
ポートが既に使用されている場合、自動的に次に利用可能なポートを試行せずに終了するには、true
に設定します。
silent
- CLI:
--silent [value]
- Config: silent
テストからのコンソール出力を抑制します。失敗したテストのログのみを表示するには、'passed-only'
を使用してください。
hideSkippedTests
- CLI:
--hideSkippedTests
スキップされたテストのログを非表示にします。
reporters
- CLI:
--reporter <name>
- Config: reporters
レポーターを指定します (default, basic, blob, verbose, dot, json, tap, tap-flat, junit, hanging-process, github-actions)。
outputFile
- CLI:
--outputFile <filename/-s>
- Config: outputFile
サポートされているレポーターが指定されている場合に、テスト結果をファイルに書き込みます。複数のレポーターの個別の出力には、cacのドット記法を使用してください (例: --outputFile.tap=./tap.txt
)。
coverage.all
- CLI:
--coverage.all
- Config: coverage.all
テストされていないファイルを含むすべてのファイルをレポートに含めるかどうかを指定します。
coverage.provider
- CLI:
--coverage.provider <name>
- Config: coverage.provider
カバレッジ収集ツールを選択します。利用可能な値は、「v8」、「istanbul」、「custom」です。
coverage.enabled
- CLI:
--coverage.enabled
- Config: coverage.enabled
カバレッジ収集を有効にします。--coverage
CLIオプションで上書きできます (デフォルト: false
)。
coverage.include
- CLI:
--coverage.include <pattern>
- Config: coverage.include
カバレッジに含めるファイルをグロブパターンとして指定します。複数のパターンを使用する場合は、複数回指定できます (デフォルト: **
)。
coverage.exclude
- CLI:
--coverage.exclude <pattern>
- Config: coverage.exclude
カバレッジから除外するファイルを指定します。複数の拡張子を使用する場合は、複数回指定できます (デフォルト: coverage.exclude
を参照)。
coverage.extension
- CLI:
--coverage.extension <extension>
- Config: coverage.extension
カバレッジに含める拡張子を指定します。複数の拡張子を使用する場合は、複数回指定できます (デフォルト: [".js", ".cjs", ".mjs", ".ts", ".mts", ".tsx", ".jsx", ".vue", ".svelte"]
)。
coverage.clean
- CLI:
--coverage.clean
- Config: coverage.clean
テスト実行前にカバレッジ結果をクリーンアップします (デフォルト: true
)。
coverage.cleanOnRerun
- CLI:
--coverage.cleanOnRerun
- Config: coverage.cleanOnRerun
ウォッチモードでの再実行時にカバレッジレポートをクリーンアップします (デフォルト: true
)。
coverage.reportsDirectory
- CLI:
--coverage.reportsDirectory <path>
- Config: coverage.reportsDirectory
カバレッジレポートの出力先ディレクトリを指定します (デフォルト: ./coverage
)。
coverage.reporter
- CLI:
--coverage.reporter <name>
- Config: coverage.reporter
使用するカバレッジレポーターを指定します。詳細はcoverage.reporter
を参照してください (デフォルト: ["text", "html", "clover", "json"]
)。
coverage.reportOnFailure
- CLI:
--coverage.reportOnFailure
- Config: coverage.reportOnFailure
テストが失敗した場合でもカバレッジレポートを生成します (デフォルト: false
)。
coverage.allowExternal
- CLI:
--coverage.allowExternal
- Config: coverage.allowExternal
プロジェクトルート外のファイルのカバレッジを収集します (デフォルト: false
)。
coverage.skipFull
- CLI:
--coverage.skipFull
- Config: coverage.skipFull
ステートメント、ブランチ、関数カバレッジが100%のファイルは表示しません (デフォルト: false
)。
coverage.thresholds.100
- CLI:
--coverage.thresholds.100
- Config: coverage.thresholds.100
すべてのカバレッジしきい値を100に設定するショートカットです (デフォルト: false
)。
coverage.thresholds.perFile
- CLI:
--coverage.thresholds.perFile
- Config: coverage.thresholds.perFile
ファイルごとのしきい値を確認します。実際のしきい値については、--coverage.thresholds.lines
、--coverage.thresholds.functions
、--coverage.thresholds.branches
、--coverage.thresholds.statements
を参照してください (デフォルト: false
)。
coverage.thresholds.autoUpdate
- CLI:
--coverage.thresholds.autoUpdate
- Config: coverage.thresholds.autoUpdate
現在のカバレッジが設定されたしきい値を超えている場合、設定ファイル内の「lines」、「functions」、「branches」、「statements」のしきい値を更新します (デフォルト: false
)。
coverage.thresholds.lines
- CLI:
--coverage.thresholds.lines <number>
行のカバレッジしきい値を指定します。詳細はistanbuljsを参照してください。このオプションはカスタムプロバイダーでは利用できません。
coverage.thresholds.functions
- CLI:
--coverage.thresholds.functions <number>
関数のカバレッジしきい値を指定します。詳細はistanbuljsを参照してください。このオプションはカスタムプロバイダーでは利用できません。
coverage.thresholds.branches
- CLI:
--coverage.thresholds.branches <number>
ブランチのカバレッジしきい値を指定します。詳細はistanbuljsを参照してください。このオプションはカスタムプロバイダーでは利用できません。
coverage.thresholds.statements
- CLI:
--coverage.thresholds.statements <number>
ステートメントのカバレッジしきい値を指定します。詳細はistanbuljsを参照してください。このオプションはカスタムプロバイダーでは利用できません。
coverage.ignoreClassMethods
- CLI:
--coverage.ignoreClassMethods <name>
- Config: coverage.ignoreClassMethods
カバレッジで無視するクラスメソッド名の配列を指定します。詳細はistanbuljsを参照してください。このオプションはIstanbulプロバイダーでのみ利用可能です (デフォルト: []
)。
coverage.processingConcurrency
- CLI:
--coverage.processingConcurrency <number>
- Config: coverage.processingConcurrency
カバレッジ結果を処理する際に使用される並行処理の制限を指定します。(デフォルトは20とCPU数のうち小さい方)。
coverage.customProviderModule
- CLI:
--coverage.customProviderModule <path>
- Config: coverage.customProviderModule
カスタムカバレッジプロバイダーモジュールのモジュール名またはパスを指定します。詳細はカスタムカバレッジプロバイダーを参照してください。このオプションはカスタムプロバイダーでのみ利用可能です。
coverage.watermarks.statements
- CLI:
--coverage.watermarks.statements <watermarks>
ステートメントのハイウォーターマークとローウォーターマークを<high>,<low>
形式で指定します。
coverage.watermarks.lines
- CLI:
--coverage.watermarks.lines <watermarks>
行のハイウォーターマークとローウォーターマークを<high>,<low>
形式で指定します。
coverage.watermarks.branches
- CLI:
--coverage.watermarks.branches <watermarks>
ブランチのハイウォーターマークとローウォーターマークを<high>,<low>
形式で指定します。
coverage.watermarks.functions
- CLI:
--coverage.watermarks.functions <watermarks>
関数のハイウォーターマークとローウォーターマークを<high>,<low>
形式で指定します。
mode
- CLI:
--mode <name>
- Config: mode
Viteモードを上書きします (デフォルト: test
または benchmark
)。
workspace
- CLI:
--workspace <path>
- Config: workspace
[非推奨] ワークスペース設定ファイルのパスを指定します。
isolate
- CLI:
--isolate
- Config: isolate
すべてのテストファイルを分離して実行します。分離を無効にするには、--no-isolate
を使用してください (デフォルト: true
)。
globals
- CLI:
--globals
- Config: globals
APIをグローバルに注入します。
dom
- CLI:
--dom
happy-domでブラウザAPIをモックします。
browser.enabled
- CLI:
--browser.enabled
- Config: browser.enabled
ブラウザでテストを実行します。--browser.enabled
と同等です (デフォルト: false
)。
browser.name
- CLI:
--browser.name <name>
- Config: browser.name
すべてのテストを特定のブラウザで実行します。一部のブラウザは特定のプロバイダーでのみ利用可能です (--browser.provider
を参照)。詳細はbrowser.name
を参照してください。
browser.headless
- CLI:
--browser.headless
- Config: browser.headless
ブラウザをヘッドレスモードで実行します (つまり、GUI (グラフィカルユーザーインターフェース) を開かずに)。VitestをCIで実行している場合、デフォルトで有効になります (デフォルト: process.env.CI
)。
browser.api.port
- CLI:
--browser.api.port [port]
- Config: browser.api.port
サーバーポートを指定します。指定したポートが既に使用されている場合、Vitestは自動的に次に利用可能なポートを試行するため、実際にサーバーがリッスンするポートとは異なる場合があります。true
に設定すると、63315
が使用されます。
browser.api.host
- CLI:
--browser.api.host [host]
- Config: browser.api.host
サーバーがリッスンするIPアドレスを指定します。LANおよびパブリックアドレスを含むすべてのIPアドレスでリッスンするには、0.0.0.0
またはtrue
に設定してください。
browser.api.strictPort
- CLI:
--browser.api.strictPort
- Config: browser.api.strictPort
ポートが既に使用されている場合、自動的に次に利用可能なポートを試行せずに終了するには、true
に設定します。
browser.provider
- CLI:
--browser.provider <name>
- Config: browser.provider
ブラウザテストを実行するために使用されるプロバイダーを指定します。一部のブラウザは特定のプロバイダーでのみ利用可能です。「webdriverio」、「playwright」、「preview」、またはカスタムプロバイダーへのパスを指定できます。詳細はbrowser.provider
を参照してください (デフォルト: "preview"
)。
browser.providerOptions
- CLI:
--browser.providerOptions <options>
- Config: browser.providerOptions
ブラウザプロバイダーに渡されるオプションを指定します。詳細はbrowser.providerOptions
を参照してください。
browser.isolate
- CLI:
--browser.isolate
- Config: browser.isolate
すべてのブラウザテストファイルを分離して実行します。分離を無効にするには、--browser.isolate=false
を使用してください (デフォルト: true
)。
browser.ui
- CLI:
--browser.ui
- Config: browser.ui
テスト実行時にVitest UIを表示します (デフォルト: !process.env.CI
)。
browser.fileParallelism
- CLI:
--browser.fileParallelism
- Config: browser.fileParallelism
ブラウザテストファイルを並行して実行するかどうかを指定します。無効にするには--browser.fileParallelism=false
を使用してください (デフォルト: true
)。
browser.connectTimeout
- CLI:
--browser.connectTimeout <timeout>
- Config: browser.connectTimeout
ブラウザへの接続にこれより時間がかかった場合、テストスイートは失敗します (デフォルト: 60_000
)。
pool
- CLI:
--pool <pool>
- Config: pool
ブラウザで実行していない場合、プールを指定します (デフォルト: forks
)。
poolOptions.threads.isolate
- CLI:
--poolOptions.threads.isolate
- Config: poolOptions.threads.isolate
スレッドプールでテストを分離します (デフォルト: true
)。
poolOptions.threads.singleThread
- CLI:
--poolOptions.threads.singleThread
- Config: poolOptions.threads.singleThread
単一スレッド内でテストを実行します (デフォルト: false
)。
poolOptions.threads.maxThreads
- CLI:
--poolOptions.threads.maxThreads <workers>
- Config: poolOptions.threads.maxThreads
テストを実行するスレッドの最大数または割合を指定します。
poolOptions.threads.minThreads
- CLI:
--poolOptions.threads.minThreads <workers>
- Config: poolOptions.threads.minThreads
テストを実行するスレッドの最小数または割合を指定します。
poolOptions.threads.useAtomics
- CLI:
--poolOptions.threads.useAtomics
- Config: poolOptions.threads.useAtomics
スレッドを同期するためにAtomicsを使用します。これにより、場合によってはパフォーマンスが向上しますが、古いNodeバージョンではセグメンテーション違反を引き起こす可能性があります (デフォルト: false
)。
poolOptions.vmThreads.isolate
- CLI:
--poolOptions.vmThreads.isolate
- Config: poolOptions.vmThreads.isolate
スレッドプールでテストを分離します (デフォルト: true
)。
poolOptions.vmThreads.singleThread
- CLI:
--poolOptions.vmThreads.singleThread
- Config: poolOptions.vmThreads.singleThread
単一スレッド内でテストを実行します (デフォルト: false
)。
poolOptions.vmThreads.maxThreads
- CLI:
--poolOptions.vmThreads.maxThreads <workers>
- Config: poolOptions.vmThreads.maxThreads
テストを実行するスレッドの最大数または割合を指定します。
poolOptions.vmThreads.minThreads
- CLI:
--poolOptions.vmThreads.minThreads <workers>
- Config: poolOptions.vmThreads.minThreads
テストを実行するスレッドの最小数または割合を指定します。
poolOptions.vmThreads.useAtomics
- CLI:
--poolOptions.vmThreads.useAtomics
- Config: poolOptions.vmThreads.useAtomics
スレッドを同期するためにAtomicsを使用します。これにより、場合によってはパフォーマンスが向上しますが、古いNodeバージョンではセグメンテーション違反を引き起こす可能性があります (デフォルト: false
)。
poolOptions.vmThreads.memoryLimit
- CLI:
--poolOptions.vmThreads.memoryLimit <limit>
- Config: poolOptions.vmThreads.memoryLimit
VMスレッドプールのメモリ制限を指定します。メモリリークが発生する場合は、この値を調整してみてください。
poolOptions.forks.isolate
- CLI:
--poolOptions.forks.isolate
- Config: poolOptions.forks.isolate
フォークプールでテストを分離します (デフォルト: true
)。
poolOptions.forks.singleFork
- CLI:
--poolOptions.forks.singleFork
- Config: poolOptions.forks.singleFork
単一のchild_process内でテストを実行します (デフォルト: false
)。
poolOptions.forks.maxForks
- CLI:
--poolOptions.forks.maxForks <workers>
- Config: poolOptions.forks.maxForks
テストを実行するプロセスの最大数または割合を指定します。
poolOptions.forks.minForks
- CLI:
--poolOptions.forks.minForks <workers>
- Config: poolOptions.forks.minForks
テストを実行するプロセスの最小数または割合を指定します。
poolOptions.vmForks.isolate
- CLI:
--poolOptions.vmForks.isolate
- Config: poolOptions.vmForks.isolate
フォークプールでテストを分離します (デフォルト: true
)。
poolOptions.vmForks.singleFork
- CLI:
--poolOptions.vmForks.singleFork
- Config: poolOptions.vmForks.singleFork
単一のchild_process内でテストを実行します (デフォルト: false
)。
poolOptions.vmForks.maxForks
- CLI:
--poolOptions.vmForks.maxForks <workers>
- Config: poolOptions.vmForks.maxForks
テストを実行するプロセスの最大数または割合を指定します。
poolOptions.vmForks.minForks
- CLI:
--poolOptions.vmForks.minForks <workers>
- Config: poolOptions.vmForks.minForks
テストを実行するプロセスの最小数または割合を指定します。
poolOptions.vmForks.memoryLimit
- CLI:
--poolOptions.vmForks.memoryLimit <limit>
- Config: poolOptions.vmForks.memoryLimit
VMフォークプールのメモリ制限を指定します。メモリリークが発生する場合は、この値を調整してみてください。
fileParallelism
- CLI:
--fileParallelism
- Config: fileParallelism
すべてのテストファイルを並行して実行するかどうかを指定します。無効にするには--no-file-parallelism
を使用してください (デフォルト: true
)。
maxWorkers
- CLI:
--maxWorkers <workers>
- Config: maxWorkers
テストを実行するワーカーの最大数または割合を指定します。
minWorkers
- CLI:
--minWorkers <workers>
- Config: minWorkers
テストを実行するワーカーの最小数または割合を指定します。
environment
- CLI:
--environment <name>
- Config: environment
ブラウザで実行していない場合、ランナー環境を指定します (デフォルト: node
)。
passWithNoTests
- CLI:
--passWithNoTests
- Config: passWithNoTests
テストが見つからない場合にパスとします。
logHeapUsage
- CLI:
--logHeapUsage
- Config: logHeapUsage
Nodeで実行中に各テストのヒープサイズを表示します。
allowOnly
- CLI:
--allowOnly
- Config: allowOnly
only
とマークされたテストとスイートを許可します (デフォルト: !process.env.CI
)。
dangerouslyIgnoreUnhandledErrors
- CLI:
--dangerouslyIgnoreUnhandledErrors
- Config: dangerouslyIgnoreUnhandledErrors
発生した未処理のエラーを無視します。
sequence.shuffle.files
- CLI:
--sequence.shuffle.files
- Config: sequence.shuffle.files
ファイルをランダムな順序で実行します。このオプションを有効にしても、実行時間の長いテストが早く開始されることはありません。(デフォルト: false
)。
sequence.shuffle.tests
- CLI:
--sequence.shuffle.tests
- Config: sequence.shuffle.tests
テストをランダムな順序で実行します (デフォルト: false
)。
sequence.concurrent
- CLI:
--sequence.concurrent
- Config: sequence.concurrent
テストを並行して実行します (デフォルト: false
)。
sequence.seed
- CLI:
--sequence.seed <seed>
- Config: sequence.seed
ランダム化シードを設定します。--sequence.shuffle
が偽の場合、このオプションは効果がありません。詳細は"Random Seed" ページを参照してください。
sequence.hooks
- CLI:
--sequence.hooks <order>
- Config: sequence.hooks
フックが実行される順序を変更します。受け入れられる値は、「stack」、「list」、「parallel」です。詳細はsequence.hooks
を参照してください (デフォルト: "parallel"
)。
sequence.setupFiles
- CLI:
--sequence.setupFiles <order>
- Config: sequence.setupFiles
セットアップファイルが実行される順序を変更します。受け入れられる値は、「list」と「parallel」です。「list」に設定すると、セットアップファイルは定義された順序で実行されます。「parallel」に設定すると、セットアップファイルは並行して実行されます (デフォルト: "parallel"
)。
inspect
- CLI:
--inspect [[host:]port]
- Config: inspect
Node.jsインスペクターを有効にします (デフォルト: 127.0.0.1:9229
)。
inspectBrk
- CLI:
--inspectBrk [[host:]port]
- Config: inspectBrk
Node.jsインスペクターを有効にし、テスト開始前にブレークします。
testTimeout
- CLI:
--testTimeout <timeout>
- Config: testTimeout
テストのデフォルトタイムアウト(ミリ秒単位) (デフォルト: 5000
)。タイムアウトを完全に無効にするには0
を使用してください。
hookTimeout
- CLI:
--hookTimeout <timeout>
- Config: hookTimeout
デフォルトフックタイムアウト(ミリ秒単位) (デフォルト: 10000
)。タイムアウトを完全に無効にするには0
を使用してください。
bail
- CLI:
--bail <number>
- Config: bail
指定された数のテストが失敗した場合にテスト実行を停止します (デフォルト: 0
)。
retry
- CLI:
--retry <times>
- Config: retry
テストが失敗した場合に指定された回数だけ再試行します (デフォルト: 0
)。
diff.aAnnotation
- CLI:
--diff.aAnnotation <annotation>
- Config: diff.aAnnotation
期待される行の注釈 (デフォルト: Expected
)。
diff.aIndicator
- CLI:
--diff.aIndicator <indicator>
- Config: diff.aIndicator
期待される行のインジケータ (デフォルト: -
)。
diff.bAnnotation
- CLI:
--diff.bAnnotation <annotation>
- Config: diff.bAnnotation
受け取った行の注釈 (デフォルト: Received
)。
diff.bIndicator
- CLI:
--diff.bIndicator <indicator>
- Config: diff.bIndicator
受け取った行のインジケータ (デフォルト: +
)。
diff.commonIndicator
- CLI:
--diff.commonIndicator <indicator>
- Config: diff.commonIndicator
共通行のインジケータ (デフォルト: )。
diff.contextLines
- CLI:
--diff.contextLines <lines>
- Config: diff.contextLines
各変更の前後で表示するコンテキスト行数 (デフォルト: 5
)。
diff.emptyFirstOrLastLinePlaceholder
- CLI:
--diff.emptyFirstOrLastLinePlaceholder <placeholder>
- Config: diff.emptyFirstOrLastLinePlaceholder
空の最初または最後の行のプレースホルダ (デフォルト: ""
)。
diff.expand
- CLI:
--diff.expand
- Config: diff.expand
すべての共通行を展開します (デフォルト: true
)。
diff.includeChangeCounts
- CLI:
--diff.includeChangeCounts
- Config: diff.includeChangeCounts
diff出力に変更数を表示します (デフォルト: false
)。
diff.omitAnnotationLines
- CLI:
--diff.omitAnnotationLines
- Config: diff.omitAnnotationLines
出力から注釈行を省略します (デフォルト: false
)。
diff.printBasicPrototype
- CLI:
--diff.printBasicPrototype
- Config: diff.printBasicPrototype
基本的なプロトタイプObjectとArrayを出力します (デフォルト: true
)。
diff.maxDepth
- CLI:
--diff.maxDepth <maxDepth>
- Config: diff.maxDepth
ネストされたオブジェクトを出力する際の再帰深度を制限します (デフォルト: 20
)。
diff.truncateThreshold
- CLI:
--diff.truncateThreshold <threshold>
- Config: diff.truncateThreshold
各変更の前後で表示する行数 (デフォルト: 0
)。
diff.truncateAnnotation
- CLI:
--diff.truncateAnnotation <annotation>
- Config: diff.truncateAnnotation
切り捨てられた行の注釈 (デフォルト: ... Diff result is truncated
)。
exclude
- CLI:
--exclude <glob>
- Config: exclude
テストから除外する追加のファイルグロブを指定します。
expandSnapshotDiff
- CLI:
--expandSnapshotDiff
- Config: expandSnapshotDiff
スナップショットが失敗した場合に完全な差分を表示します。
disableConsoleIntercept
- CLI:
--disableConsoleIntercept
- Config: disableConsoleIntercept
コンソールロギングの自動インターセプトを無効にします (デフォルト: false
)。
typecheck.enabled
- CLI:
--typecheck.enabled
- Config: typecheck.enabled
テストと並行して型チェックを有効にします (デフォルト: false
)。
typecheck.only
- CLI:
--typecheck.only
- Config: typecheck.only
型チェックテストのみを実行します。これにより、型チェックが自動的に有効になります (デフォルト: false
)。
typecheck.checker
- CLI:
--typecheck.checker <name>
- Config: typecheck.checker
使用する型チェッカーを指定します。利用可能な値は、「tsc」、「vue-tsc」、および実行可能ファイルへのパスです (デフォルト: "tsc"
)。
typecheck.allowJs
- CLI:
--typecheck.allowJs
- Config: typecheck.allowJs
JavaScriptファイルの型チェックを許可します。デフォルトではtsconfig.jsonの値を使用します。
typecheck.ignoreSourceErrors
- CLI:
--typecheck.ignoreSourceErrors
- Config: typecheck.ignoreSourceErrors
ソースファイルからの型エラーを無視します。
typecheck.tsconfig
- CLI:
--typecheck.tsconfig <path>
- Config: typecheck.tsconfig
カスタムtsconfigファイルのパスを指定します。
typecheck.spawnTimeout
- CLI:
--typecheck.spawnTimeout <time>
- Config: typecheck.spawnTimeout
型チェッカーを起動するのにかかる最小時間(ミリ秒)を指定します。
project
- CLI:
--project <name>
- Config: project
Vitestワークスペース機能を使用している場合に実行するプロジェクトの名前を指定します。これは複数のプロジェクトに対して繰り返すことができます: --project=1 --project=2
。ワイルドカードを使用してプロジェクトをフィルタリングすることも可能です (例: --project=packages*
)、また--project=!pattern
でプロジェクトを除外することもできます。
slowTestThreshold
- CLI:
--slowTestThreshold <threshold>
- Config: slowTestThreshold
テストまたはスイートが遅いと見なされるしきい値(ミリ秒) (デフォルト: 300
)。
teardownTimeout
- CLI:
--teardownTimeout <timeout>
- Config: teardownTimeout
ティアダウン関数のデフォルトタイムアウト(ミリ秒単位) (デフォルト: 10000
)。
maxConcurrency
- CLI:
--maxConcurrency <number>
- Config: maxConcurrency
スイート内の同時テストの最大数 (デフォルト: 5
)。
expect.requireAssertions
- CLI:
--expect.requireAssertions
- Config: expect.requireAssertions
すべてのテストに少なくとも1つのアサーションが必要であると要求します。
expect.poll.interval
- CLI:
--expect.poll.interval <interval>
- Config: expect.poll.interval
expect.poll()
アサーションのポーリング間隔(ミリ秒) (デフォルト: 50
)。
expect.poll.timeout
- CLI:
--expect.poll.timeout <timeout>
- Config: expect.poll.timeout
expect.poll()
アサーションのポーリングタイムアウト(ミリ秒) (デフォルト: 1000
)。
printConsoleTrace
- CLI:
--printConsoleTrace
- Config: printConsoleTrace
常にコンソールスタックトレースを出力します。
includeTaskLocation
- CLI:
--includeTaskLocation
- Config: includeTaskLocation
location
プロパティにテストとスイートの場所を収集します。
attachmentsDir
- CLI:
--attachmentsDir <dir>
- Config: attachmentsDir
context.annotate
からの添付ファイルの保存先ディレクトリ (デフォルト: .vitest-attachments
)。
run
- CLI:
--run
ウォッチモードを無効にします。
color
- CLI:
--no-color
コンソール出力から色を削除します。
clearScreen
- CLI:
--clearScreen
ウォッチモードでテストを再実行する際にターミナル画面をクリアします (デフォルト: true
)。
configLoader
- CLI:
--configLoader <loader>
esbuildで設定をバンドルするにはbundle
を、オンザフライで処理するにはrunner
(実験的) を使用します。これはViteバージョン6.1.0以降でのみ利用可能です。(デフォルト: bundle
)。
standalone
- CLI:
--standalone
テストを実行せずにVitestを開始します。ファイルフィルターは無視され、テストは変更時のみ実行されます (デフォルト: false
)。
changed
- 型:
boolean | string
- デフォルト: false
変更されたファイルに対してのみテストを実行します。値が指定されていない場合、コミットされていない変更(ステージング済みと未ステージングの両方を含む)に対してテストを実行します。
最後のコミットで行われた変更に対してテストを実行するには、--changed HEAD~1
を使用できます。コミットハッシュ(例:--changed 09a9920
)やブランチ名(例:--changed origin/develop
)を渡すことも可能です。
コードカバレッジと併用すると、レポートには変更に関連するファイルのみが含まれます。
forceRerunTriggers
設定オプションと組み合わせると、forceRerunTriggers
リストに記載されているファイルの少なくとも1つが変更された場合、テストスイート全体が実行されます。デフォルトでは、Vitest設定ファイルとpackage.json
への変更は常にスイート全体を再実行します。
shard
- 型:
string
- デフォルト: disabled
実行するテストスイートのシャードを<index>
/<count>
の形式で指定します。ここで、
count
は正の整数で、分割されたパーツの総数です。index
は正の整数で、分割されたパーツのインデックスです。
このコマンドは全テストをcount
個に均等分割し、index
パーツに含まれるテストのみを実行します。例えば、テストスイートを3つのパーツに分割するには、次のように使用します。
vitest run --shard=1/3
vitest run --shard=2/3
vitest run --shard=3/3
WARNING
このオプションは--watch
が有効な状態(開発環境ではデフォルトで有効)では使用できません。
TIP
--reporter=blob
がファイル出力なしで使用された場合、他のVitestプロセスとの衝突を避けるため、デフォルトのパスには現在のシャード設定が含まれます。
merge-reports
- 型:
boolean | string
指定されたフォルダー(デフォルトでは.vitest-reports
)にあるすべてのblobレポートをマージします。このコマンドでは、任意のレポーターを使用できます(blob
は除外されます)。
vitest --merge-reports --reporter=junit