コマンドラインインターフェース
コマンド
vitest
カレントディレクトリでVitestを起動します。開発環境ではウォッチモードが有効になり、CI環境では自動的に実行モードに切り替わります。
実行するテストファイルを絞り込むために、追加の引数を渡すことができます。例:
vitest foobar
このコマンドは、パスにfoobar
が含まれるテストファイルのみを実行します。このフィルターは部分一致チェックのみを行い、正規表現やグロブパターンはサポートしていません(ただし、Vitestがフィルターを受け取る前にターミナルが処理する場合を除きます)。
vitest run
ウォッチモードなしでテストを一度だけ実行します。
vitest watch
すべてのテストスイートを実行し、ファイルの変更を監視します。変更が検出された場合、テストを再実行します。引数なしでvitest
を実行するのと同じ動作です。CI環境では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
オプションも渡すようにしてください。
// .lintstagedrc.js
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は標準出力に出力されます。
--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
- Config: silent
テストからのコンソール出力を抑制します。
hideSkippedTests
- CLI:
--hideSkippedTests
スキップされたテストのログを非表示にします。
reporters
- CLI:
--reporter <name>
- Config: reporters
使用するレポーターを指定します。
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
カスタムカバレッジプロバイダーモジュールのモジュール名またはパスを指定します。詳細についてはCustom Coverage Providerを参照してください。このオプションはカスタムプロバイダーでのみ利用可能です。
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
と同等です (デフォルト: 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
)。
pool
- CLI:
--pool <pool>
- Config: pool
ブラウザで実行しない場合、テスト実行に使用するプールを指定します (デフォルト: threads
)。
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
VMスレッドプールでテストを分離します (デフォルト: true
)。
poolOptions.vmThreads.singleThread
- CLI:
--poolOptions.vmThreads.singleThread
- Config: poolOptions.vmThreads.singleThread
単一VMスレッド内でテストを実行します (デフォルト: false
)。
poolOptions.vmThreads.maxThreads
- CLI:
--poolOptions.vmThreads.maxThreads <workers>
- Config: poolOptions.vmThreads.maxThreads
テストを実行するVMスレッドの最大数または割合を指定します。
poolOptions.vmThreads.minThreads
- CLI:
--poolOptions.vmThreads.minThreads <workers>
- Config: poolOptions.vmThreads.minThreads
テストを実行するVMスレッドの最小数または割合を指定します。
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
VMフォークプールでテストを分離します (デフォルト: 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
テストを実行するVMプロセスの最大数または割合を指定します。
poolOptions.vmForks.minForks
- CLI:
--poolOptions.vmForks.minForks <workers>
- Config: poolOptions.vmForks.minForks
テストを実行するVMプロセスの最小数または割合を指定します。
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
がfalse
の場合、このオプションは効果がありません。詳細については"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
)。
hookTimeout
- CLI:
--hookTimeout <timeout>
- Config: hookTimeout
デフォルトのフックタイムアウト(ミリ秒)です (デフォルト: 10000
)。
bail
- CLI:
--bail <number>
- Config: bail
指定された数のテストが失敗した場合にテスト実行を停止します (デフォルト: 0
)。
retry
- CLI:
--retry <times>
- Config: retry
テストが失敗した場合に指定された回数だけ再試行します (デフォルト: 0
)。
diff
- CLI:
--diff <path>
- Config: diff
diffインターフェースの生成に使用されるdiff設定へのパスを指定します。
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
ファイルへのパスを指定します。
project
- CLI:
--project <name>
- Config: project
Vitestワークスペース機能を使用している場合に実行するプロジェクトの名前。これは複数のプロジェクトに対して繰り返すことができます: --project=1 --project=2
。--project=packages*
のようなワイルドカードを使用してプロジェクトをフィルタリングすることもできます。
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
常にコンソールスタックトレースを出力します。
run
- CLI:
--run
ウォッチモードを無効にします。
color
- CLI:
--no-color
コンソール出力から色を削除します。
clearScreen
- CLI:
--clearScreen
ウォッチモード中にテストを再実行する際にターミナル画面をクリアします (デフォルト: true
)。
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
を除く)。
vitest --merge-reports --reporter=junit