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

Guide

Pourquoi Vitest

Premiers pas

Fonctionnalités

Espace de travail

Interface de ligne de commande

Filtrage des tests

Reporters

Couverture

Instantané (Snapshot)

Simulations

Tests de Type

Interface utilisateur de Vitest

Mode Navigateur

Tests intégrés au code source

Contexte de Test

Environnement de test

Extension des vérificateurs (Matchers)

Intégrations pour IDE

Débogage

Comparaison avec d'autres outils de test

Guide de migration

Erreurs courantes

Améliorer les performances

API

Référence de l'API de Test

Fonctions Mock

Vi

expect

expectTypeOf

assert

assertType

Configuration

Configuration du fichier Vitest

Configuration de Vitest

Sur cette page

Pourquoi Vitest ​

REMARQUE

Ce guide suppose que vous connaissez Vite. Pour en savoir plus, vous pouvez consulter le Guide Pourquoi Vite et Outils frontend de nouvelle génération avec ViteJS, une présentation en direct où Evan You a expliqué les principaux concepts.

La nécessité d'un exécuteur de tests natif pour Vite ​

La prise en charge native par Vite des modèles web courants, des fonctionnalités telles que les importations globales (glob) et les primitives SSR, ainsi que ses nombreux plugins et intégrations favorisent un écosystème dynamique. Son approche du développement et de la construction est la clé de son succès. Pour la documentation, il existe plusieurs alternatives basées sur SSG alimentées par Vite. Cependant, l'approche de Vite concernant les tests unitaires n'était pas clairement définie. Les options existantes comme Jest ont été créées dans un contexte différent. Il existe une duplication importante entre Jest et Vite, ce qui oblige les utilisateurs à configurer deux pipelines différents.

L'utilisation du serveur de développement Vite pour transformer vos fichiers pendant les tests permet de créer un exécuteur simple. Cet exécuteur n'a pas besoin de gérer la complexité de la transformation des fichiers sources et peut se concentrer uniquement sur la fourniture de la meilleure expérience développeur (DX) pendant les tests. Un exécuteur de tests qui utilise la même configuration que votre application (via vite.config.js) partage un pipeline de transformation commun pendant le développement, la construction et les tests. Il est extensible via la même API de plugins, ce qui vous permet, ainsi qu'aux mainteneurs de vos outils, de fournir une intégration de première classe avec Vite. Un outil conçu dès le départ avec Vite à l'esprit, tirant parti de ses améliorations en matière d'expérience développeur (DX), comme son rechargement de module à chaud (HMR) instantané. Voici Vitest, un framework de test de nouvelle génération propulsé par Vite.

Étant donné l'adoption massive de Jest, Vitest fournit une API compatible qui vous permet de l'utiliser comme un remplacement direct dans la plupart des projets. Il inclut également les fonctionnalités les plus courantes requises lors de la configuration de vos tests unitaires (mocking, snapshots, couverture). Vitest accorde une grande importance aux performances et utilise des threads Worker pour exécuter autant de tests que possible en parallèle. Dans certains cas, les tests s'exécutent plusieurs fois plus rapidement. Le mode Watch est activé par défaut, s'alignant sur l'approche centrée sur le développement de Vite. Malgré toutes ces améliorations en matière d'expérience développeur (DX), Vitest reste léger en choisissant soigneusement ses dépendances - ou en internalisant directement les éléments nécessaires.

Vitest vise à se positionner comme l'exécuteur de tests de choix pour les projets Vite, et comme une alternative solide même pour les projets n'utilisant pas Vite.

Continuez votre lecture dans le Guide de démarrage

En quoi Vitest est-il différent de X ? ​

Vous pouvez consulter la section Comparaisons pour plus de détails sur la façon dont Vitest diffère des autres outils similaires.

Pager
Page suivantePremiers pas

Publié sous la licence MIT.

Copyright (c) 2024 Mithril Contributors

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

Publié sous la licence MIT.

Copyright (c) 2024 Mithril Contributors