Skip to content
Vitest 1
Main Navigation GuideAPIConfigurationAvancé
1.6.1
0.34.6

Français

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

Français

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

Apparence

Sidebar Navigation

Avancé

API Node.js

Exécuteur de tests

Métadonnées des tâches

Étendre les reporters

Pool personnalisé

Sur cette page

API Node.js ​

WARNING

Vitest expose une API privée expérimentale. Les changements majeurs risquent de ne pas suivre le semver, veuillez donc épingler la version de Vitest que vous utilisez.

startVitest ​

Vous pouvez lancer les tests Vitest en utilisant son API Node.js :

js
import { startVitest } from 'vitest/node';

const vitest = await startVitest('test');

await vitest?.close();

La fonction startVitest renvoie une instance Vitest si les tests peuvent être démarrés avec succès. Elle retourne undefined si l'une des conditions suivantes est remplie :

  • Vitest n'a pas trouvé le package vite (généralement installé avec Vitest).
  • La couverture est activée et le mode d'exécution est "test", mais le package de couverture n'est pas installé (@vitest/coverage-v8 ou @vitest/coverage-istanbul).
  • Le package d'environnement n'est pas installé (jsdom/happy-dom/@edge-runtime/vm).

Si undefined est retourné ou si les tests échouent pendant l'exécution, Vitest définit process.exitCode à 1.

Si le mode de surveillance n'est pas activé, Vitest appellera la méthode close.

Si le mode de surveillance est activé et que le terminal prend en charge TTY, Vitest affichera des raccourcis clavier dans la console.

Vous pouvez passer une liste de filtres comme deuxième argument. Vitest exécutera uniquement les tests dont le chemin de fichier contient au moins une des chaînes transmises.

De plus, vous pouvez utiliser le troisième argument pour passer des arguments de ligne de commande (CLI), qui remplaceront toutes les options de configuration de test.

Alternativement, vous pouvez passer la configuration Vite complète comme quatrième argument, qui aura priorité sur toutes les autres options définies par l'utilisateur.

createVitest ​

Vous pouvez créer une instance Vitest vous-même en utilisant la fonction createVitest. Elle renvoie la même instance Vitest que startVitest, mais elle ne démarre pas les tests et ne valide pas la présence des packages requis.

js
import { createVitest } from 'vitest/node';

const vitest = await createVitest('test', {
  watch: false,
});

parseCLI ​

Vous pouvez utiliser cette méthode pour analyser les arguments de la ligne de commande (CLI). Elle accepte une chaîne de caractères (où les arguments sont séparés par un simple espace) ou un tableau de chaînes de caractères contenant les arguments de la CLI dans le même format que celui utilisé par Vitest CLI. Elle renvoie un filtre et des options que vous pouvez ensuite transmettre aux méthodes createVitest ou startVitest.

ts
import { parseCLI } from 'vitest/node';

parseCLI('vitest ./files.ts --coverage --browser=chrome');

Vitest ​

L'instance Vitest requiert la définition du mode de test actuel. Les modes possibles sont les suivants :

  • test : pour l'exécution des tests unitaires.
  • benchmark : pour l'exécution des benchmarks.

mode ​

test ​

Le mode test exécute uniquement les fonctions à l'intérieur de test ou it, et génère une erreur si bench est rencontré. Ce mode utilise les options include et exclude dans la configuration pour identifier les fichiers de test.

benchmark ​

Le mode benchmark exécute les fonctions bench et génère une erreur s'il rencontre test ou it. Ce mode utilise les options benchmark.include et benchmark.exclude dans la configuration pour identifier les fichiers de benchmark.

start ​

Vous pouvez lancer l'exécution des tests ou des benchmarks avec la méthode start. Vous pouvez passer un tableau de chaînes pour filtrer les fichiers à tester.

Pager
Page suivanteExécuteur de tests

Publié sous la licence MIT.

Copyright (c) 2024 Mithril Contributors

https://v1.vitest.dev/advanced/api

Publié sous la licence MIT.

Copyright (c) 2024 Mithril Contributors