Skip to content
Vitest 3
Main Navigation Guide & APIConfigurationMode NavigateurAPI avancée
3.2.0
2.1.9
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

Introduction

Pourquoi le mode navigateur

Mode Navigateur

Configuration

Référence de configuration du navigateur

Configuration de Playwright

Configuration de WebdriverIO

API

API du Contexte

API d'interactivité

Localisateurs

API d'assertions

Commandes

Guide

Configurations Multiples

Configuration de Vitest

Référence de l'API des Tests

API avancée

Sur cette page

Pourquoi le mode navigateur ​

Motivation ​

Nous avons développé la fonctionnalité de mode navigateur de Vitest afin d'améliorer les flux de travail de test et d'obtenir des résultats plus précis et fiables. Cette fonctionnalité, qui fait partie de notre API de test expérimentale, permet aux développeurs d'exécuter des tests directement dans un environnement de navigateur natif. Dans cette section, nous explorerons les raisons qui ont motivé cette fonctionnalité et les avantages qu'elle apporte aux tests.

Différentes approches de test ​

Il existe plusieurs façons de tester le code JavaScript. Certains frameworks de test simulent des environnements de navigateur dans Node.js, tandis que d'autres exécutent des tests dans de vrais navigateurs. Dans ce contexte, jsdom est un exemple d'implémentation de spécification qui simule un environnement de navigateur lorsqu'il est utilisé avec un lanceur de tests comme Jest ou Vitest. D'autres outils de test, tels que WebdriverIO ou Cypress, permettent aux développeurs de tester leurs applications dans un navigateur réel. Playwright, quant à lui, fournit un moteur de navigateur.

Les limites de la simulation ​

Tester des programmes JavaScript dans des environnements simulés comme jsdom ou happy-dom a simplifié la configuration des tests et offert une API facile à utiliser. Cela les rend adaptés à de nombreux projets et renforce la confiance dans les résultats des tests. Cependant, il est crucial de garder à l'esprit que ces outils ne simulent qu'un environnement de navigateur et non un navigateur réel, ce qui peut entraîner des divergences entre l'environnement simulé et l'environnement réel. Par conséquent, des faux-positifs ou des faux-négatifs peuvent apparaître dans les résultats des tests.

Pour atteindre le plus haut niveau de confiance dans nos tests, il est essentiel de les exécuter dans un environnement de navigateur réel. C'est pourquoi nous avons développé la fonctionnalité de mode navigateur dans Vitest, permettant aux développeurs d'exécuter des tests directement dans un navigateur et d'obtenir des résultats plus précis et fiables. Grâce aux tests au niveau du navigateur, les développeurs peuvent être plus confiants quant au bon fonctionnement de leur application dans un scénario réel.

Inconvénients ​

Lors de l'utilisation du mode navigateur de Vitest, il est important de prendre en compte les inconvénients suivants :

Développement précoce ​

La fonctionnalité de mode navigateur de Vitest est encore à ses premiers stades de développement. À ce titre, elle n'est peut-être pas encore entièrement optimisée, et il peut subsister des bugs ou des problèmes non encore résolus. Il est recommandé aux utilisateurs de compléter leur expérience Vitest en mode navigateur avec un lanceur de tests côté navigateur autonome tel que WebdriverIO, Cypress ou Playwright.

Initialisation plus longue ​

Le mode navigateur de Vitest nécessite le démarrage du fournisseur et du navigateur durant le processus d'initialisation, ce qui peut prendre un certain temps. Cela peut entraîner des temps d'initialisation plus longs comparativement à d'autres modèles de test.

Pager
Page suivanteMode Navigateur

Publié sous la licence MIT.

Copyright (c) 2021-Present Vitest Team

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

Publié sous la licence MIT.

Copyright (c) 2021-Present Vitest Team