Skip to content
Vitest 1
Main Navigation ガイドAPI設定高度な
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 UI

ブラウザモード

ソース内テスト

テストコンテキスト

テスト環境

マッチャー拡張

IDE 連携機能

デバッグ

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

マイグレーションガイド

よくあるエラー

パフォーマンスの改善

API

テスト API リファレンス

モック関数

Vi

expect

expectTypeOf

assert

assertType

設定

Vitestの設定ファイル管理

Vitestの設定

このページの内容

テストのフィルタリング ​

スイートとテストのフィルタリング、タイムアウト設定、スイートとテストの並列実行について説明します。

CLI ​

CLI を使用すると、ファイル名でテストをフィルタリングできます。

bash
$ vitest basic

この例では、ファイル名にbasicを含むテストファイルのみが実行されます。以下に例を示します。

basic.test.ts
basic-foo.test.ts
basic/foo.test.ts

-t, --testNamePattern <pattern> オプションを使用すると、フルネームでテストをフィルタリングすることもできます。これは、ファイル名ではなく、ファイル内で定義された名前でフィルタリングする場合に役立ちます。

タイムアウトの設定 ​

テストのタイムアウトは、テスト関数の第 3 引数にミリ秒単位で指定できます。デフォルト値は 5 秒です。

ts
import { test } from 'vitest';

test('name', async () => {
  /* ... */
}, 1000);

beforeAllなどのフックでもタイムアウトを設定できます。デフォルト値はテストと同様に 5 秒です。

ts
import { beforeAll } from 'vitest';

beforeAll(async () => {
  /* ... */
}, 1000);

スイートとテストのスキップ ​

特定のスイートまたはテストの実行をスキップするには、.skipを使用します。

ts
import { assert, describe, it } from 'vitest';

describe.skip('skipped suite', () => {
  it('test', () => {
    // スイートがスキップされるため、エラーは発生しません
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('suite', () => {
  it.skip('skipped test', () => {
    // テストがスキップされるため、エラーは発生しません
    assert.equal(Math.sqrt(4), 3);
  });
});

特定のスイートとテストの実行 ​

特定のスイートやテストのみを実行するには、.onlyを使用します。

ts
import { assert, describe, it } from 'vitest';

// このスイート(および`.only`が指定された他のスイート)のみが実行されます
describe.only('suite', () => {
  it('test', () => {
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('another suite', () => {
  it('skipped test', () => {
    // 他のテストに`.only`が指定されているため、このテストはスキップされます
    assert.equal(Math.sqrt(4), 3);
  });

  it.only('test', () => {
    // このテスト(および`.only`が指定された他のテスト)のみが実行されます
    assert.equal(Math.sqrt(4), 2);
  });
});

未実装のスイートとテスト ​

将来実装する予定のスイートやテストのプレースホルダーとして、.todoを使用します。.todoでマークされたスイートとテストは、レポートに未実装項目として表示されます。

ts
import { describe, it } from 'vitest';

// このスイートは未実装としてレポートに表示されます
describe.todo('unimplemented suite');

// このテストは未実装としてレポートに表示されます
describe('suite', () => {
  it.todo('unimplemented test');
});
Pager
前のページコマンドラインインターフェース
次のページレポーター

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

Copyright (c) 2024 Mithril Contributors

https://v1.vitest.dev/guide/filtering

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

Copyright (c) 2024 Mithril Contributors