Skip to content
Vitest 3
Main Navigation ガイド & API設定ブラウザモード高度なAPI
3.2.0
2.1.9
1.6.1
0.34.6

日本語

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
한국어
Italiano
Polski
Türkçe
čeština
magyar

日本語

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
한국어
Italiano
Polski
Türkçe
čeština
magyar

外観

Sidebar Navigation

はじめに

Vitest を選ぶ理由

はじめに

機能

Vitest の設定

API

テストAPIリファレンス

モック関数

Vi

expect

expectTypeOf

assert

assertType

ガイド

コマンドラインインターフェース

テストフィルタリング

テストプロジェクト

レポーター

カバレッジ

スナップショット

モック

並列処理

型テスト

Vitest UI

インソース・テスト

テストコンテキスト

テストアノテーション

テスト環境

マッチャーの拡張

IDE統合

デバッグ

よくあるエラー

移行ガイド

Vitest 3.0 への移行

Jest からの移行

パフォーマンス

テストパフォーマンスのプロファイリング

パフォーマンスの向上

ブラウザーモード

上級者向けAPI

他のテストランナーとの比較

このページの内容

並列処理 ​

ファイル並列処理 ​

デフォルトでは、Vitest はテストファイルを並列で実行します。指定された pool の種類に応じて、Vitest はテストファイルを並列実行するために異なるメカニズムを利用します。

  • forks (デフォルト) および vmForks は、異なる子プロセスでテストを実行します。
  • threads および vmThreads は、異なるワーカースレッドでテストを実行します。

「子プロセス」と「ワーカースレッド」は、どちらも「ワーカー」と総称されます。実行中のワーカー数は、minWorkers および maxWorkers オプションで設定できます。より詳細な設定は、poolOptions で可能です。

テスト数が多い場合、通常は並列実行の方が高速ですが、これはプロジェクト、環境、および分離状態にも依存します。ファイルの並列化を無効にするには、fileParallelism を false に設定します。パフォーマンス改善の可能性について詳しく知るには、パフォーマンスガイドをお読みください。

テスト並列処理 ​

テストファイルとは異なり、Vitest はテストを逐次実行します。これは、単一のテストファイル内のテストが、定義された順番で実行されることを意味します。

Vitest は、テストを並行実行するconcurrent オプションをサポートしています。このオプションが設定されている場合、Vitest は同じファイル内の並行テストをグループ化し(同時に実行されるテストの数は maxConcurrency オプションに依存します)、Promise.all を使用して実行します。

Vitest は高度な分析を実行せず、これらのテストのために追加のワーカーを作成しません。これは、テストのパフォーマンスが向上するのは、非同期操作に大きく依存している場合に限られる、ということを意味します。たとえば、concurrent オプションが指定されていても、以下の同期処理のテストは引き続き順次実行されます。

ts
test.concurrent('the first test', () => {
  expect(1).toBe(1);
});

test.concurrent('the second test', () => {
  expect(2).toBe(2);
});

すべてのテストを並列実行したい場合は、sequence.concurrent オプションを true に設定できます。

Pager
前のページモック
次のページ型テスト

MITライセンス の下で公開されています。

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/parallelism

MITライセンス の下で公開されています。

Copyright (c) 2021-Present Vitest Team