Skip to content
Vitest 3
Main Navigation Průvodce & APIKonfiguraceRežim prohlížečePokročilé API
3.2.0
2.1.9
1.6.1
0.34.6

čeština

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

čeština

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

Vzhled

Sidebar Navigation

Úvod

Proč Vitest

Začínáme

Funkce

Konfigurace Vitestu

API

Testovací reference API

Mockovací funkce

Vi

expect

expectTypeOf

assert

assertType

Průvodce

Rozhraní příkazového řádku

Filtrování testů

Testovací projekty

Generátory zpráv

Pokrytí kódu

Snímky

Mockování

Paralelní zpracování

Typové testování

Vitest UI

Testování přímo ve zdrojovém kódu

Testovací kontext

Anotace testů

Testovací prostředí

Rozšíření matcherů

Integrace s IDE

Ladění

Běžné chyby

Průvodce migrací

Migrace na Vitest 3.0

Migrace z Jest

Výkon

Profilování výkonu testů

Zlepšení výkonu

Režim prohlížeče

Rozšířené API

Srovnání

Na této stránce

Filtrování testů ​

Filtrování, časové limity, paralelní spouštění sad a testů

CLI ​

Pomocí CLI můžete filtrovat testovací soubory podle názvu:

bash
$ vitest basic

Spustí se pouze testovací soubory, které obsahují basic, například:

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

Můžete také použít volbu -t, --testNamePattern <pattern> k filtrování testů podle jejich plného názvu. To může být užitečné, když chcete filtrovat podle názvu definovaného uvnitř souboru, spíše než podle názvu souboru samotného.

Od Vitest 3 můžete také specifikovat test podle názvu souboru a čísla řádku:

bash
$ vitest basic/foo.test.ts:10

WARNING

Pozor: Vitest pro tuto funkci vyžaduje plný název souboru. Může být relativní k aktuálnímu pracovnímu adresáři nebo absolutní cesta k souboru.

bash
$ vitest basic/foo.js:10 # ✅
$ vitest ./basic/foo.js:10 # ✅
$ vitest /users/project/basic/foo.js:10 # ✅
$ vitest foo:10 # ❌
$ vitest ./basic/foo:10 # ❌

Momentálně Vitest také nepodporuje rozsahy:

bash
$ vitest basic/foo.test.ts:10, basic/foo.test.ts:25 # ✅
$ vitest basic/foo.test.ts:10-25 # ❌

Určení časového limitu ​

Můžete volitelně předat časový limit v milisekundách jako třetí argument testům. Výchozí hodnota je 5 sekund.

ts
import { test } from 'vitest';

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

Hooky mohou mít také časový limit, s výchozím limitem rovněž 5 sekund.

ts
import { beforeAll } from 'vitest';

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

Přeskakování sad a testů ​

Použijte .skip pro přeskočení určitých sad nebo testů:

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

describe.skip('skipped suite', () => {
  it('test', () => {
    // Sada přeskočena, bez chyby
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('suite', () => {
  it.skip('skipped test', () => {
    // Test přeskočen, bez chyby
    assert.equal(Math.sqrt(4), 3);
  });
});

Výběr sad a testů ke spuštění ​

Použijte .only pro spuštění pouze určitých sad nebo testů:

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

// Spustí se pouze tato sada (a další označené `only`)
describe.only('suite', () => {
  it('test', () => {
    assert.equal(Math.sqrt(4), 3);
  });
});

describe('another suite', () => {
  it('skipped test', () => {
    // Test přeskočen, protože testy běží v režimu `only`
    assert.equal(Math.sqrt(4), 3);
  });

  it.only('test', () => {
    // Spustí se pouze tento test (a další označené `only`)
    assert.equal(Math.sqrt(4), 2);
  });
});

Neimplementované sady a testy ​

Použijte .todo k označení sad a testů, které mají být implementovány:

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

// V reportu se zobrazí položka pro tuto sadu
describe.todo('unimplemented suite');

// V reportu se zobrazí položka pro tento test
describe('suite', () => {
  it.todo('unimplemented test');
});
Pager
Předchozí stránkaRozhraní příkazového řádku
Další stránkaTestovací projekty

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/filtering

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team