パフォーマンスの向上
Vitest は既定で プール
threads
プールは、各テストファイルを別々のWorker
forks
プールは、各テストファイルを別々の フォークされた子プロセスvmThreads
プールは、各テストファイルを別々の VM コンテキスト
これによりテスト時間が大幅に増加し、副作用に依存せず、(通常は node
環境のプロジェクトに当てはまる)状態を適切にクリーンアップするプロジェクトには望ましくない場合があります。この場合、分離を無効にするとテストの速度が向上します。これを行うには、--no-isolate
フラグを CLI に指定するか、構成の test.isolate
bash
vitest --no-isolate
ts
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
isolate: false,
// you can also disable isolation only for specific pools
poolOptions: {
forks: {
isolate: false,
},
},
},
})
ヒント
vmThreads
プールを使用している場合、分離を無効にすることはできません。代わりに、threads
プールを使用するとテストパフォーマンスが向上します。
いくつかのプロジェクトでは、スタートアップ時間を改善するために並列処理を無効にしてもよいでしょう。それを行うには、CLIに--no-file-parallelism
フラグを送信するか、configのtest.fileParallelism
プロパティをfalse
に設定します。
bash
vitest --no-file-parallelism
ts
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
fileParallelism: false,
},
})