Node API
WARNING
Vitest zpřístupňuje experimentální privátní API. Zásadní změny nemusí dodržovat pravidla sémantického verzování (semver), proto při použití doporučujeme zafixovat verzi Vitest.
startVitest
Testy Vitest můžete spustit pomocí Node API:
import { startVitest } from 'vitest/node';
const vitest = await startVitest('test');
await vitest?.close();
Funkce startVitest
vrací instanci Vitest
, pokud je možné testy spustit. Vrací undefined
v následujících případech:
- Vitest nenalezl balíček "vite" (obvykle se instaluje s Vitest).
- Je-li povoleno pokrytí kódu (coverage) a režim běhu je "test", ale není nainstalován balíček pro pokrytí kódu (
@vitest/coverage-v8
nebo@vitest/coverage-istanbul
). - Není-li nainstalován balíček pro prostředí (
jsdom
/happy-dom
/@edge-runtime/vm
).
Pokud je vráceno undefined
nebo testy selžou během spouštění, Vitest nastaví process.exitCode
na 1
.
Pokud není povolen režim sledování (watch), Vitest zavolá metodu close
.
Pokud je povolen režim sledování a terminál podporuje TTY, Vitest zaregistruje klávesové zkratky v konzoli.
Jako druhý argument můžete předat pole filtrů. Vitest spustí pouze testy, jejichž cesta k souboru obsahuje alespoň jeden z předaných řetězců.
Jako třetí argument můžete předat argumenty příkazové řádky (CLI), které přepíší veškeré nastavení testů.
Alternativně můžete jako čtvrtý argument předat kompletní konfiguraci Vite, která má přednost před uživatelským nastavením.
createVitest
Instanci Vitest můžete vytvořit sami pomocí funkce createVitest
. Vrací stejnou instanci Vitest
jako startVitest
, ale nespouští testy a neověřuje nainstalované balíčky.
import { createVitest } from 'vitest/node';
const vitest = await createVitest('test', {
watch: false,
});
Vitest
Instance Vitest vyžaduje aktuální testovací režim. Může to být:
test
pro spouštění runtime testůbenchmark
pro spouštění benchmarkůtypecheck
pro spouštění testů typů
mode
test
Testovací režim volá pouze funkce test
nebo it
a vyvolá chybu, pokud narazí na bench
. Tento režim používá možnosti include
a exclude
v konfiguraci k nalezení testovacích souborů.
benchmark
Režim Benchmark volá funkce bench
a vyvolá chybu, pokud narazí na test
nebo it
. Tento režim používá možnosti benchmark.include
a benchmark.exclude
v konfiguraci k nalezení souborů pro benchmark.
typecheck
Režim Typecheck testy nespouští. Pouze analyzuje typy a poskytne souhrn. Tento režim používá možnosti typecheck.include
a typecheck.exclude
v konfiguraci k nalezení souborů pro analýzu typů.
start
Testy nebo benchmarky spustíte metodou start
. Můžete předat pole řetězců pro filtrování testovacích souborů.