Skip to content
Vitest 3
Main Navigation Guida & APIConfigurazioneModalità BrowserAPI avanzata
3.2.0
2.1.9
1.6.1
0.34.6

Italiano

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

Italiano

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

Aspetto

Sidebar Navigation

Introduzione

Perché Vitest

Per Iniziare

Caratteristiche

Configurazione di Vitest

API

Riferimento API di test

Funzioni Mock

Vi

expect

expectTypeOf

assert

assertType

Guida

Interfaccia a Riga di Comando

Filtro dei Test

Progetti di Test

Reporter

Copertura

Snapshot

Mocking

Parallelismo

Tipi di Test

Vitest UI

Test nel Codice Sorgente

Contesto di Test

Annotazioni dei Test

Ambiente di Test

Estensione dei Matcher

Integrazioni IDE

Debugging

Errori Comuni

Guida alla Migrazione

Migrazione a Vitest 3.0

Migrazione da Jest

Prestazioni

Profilazione delle prestazioni dei test

Ottimizzare le Prestazioni

Modalità Browser

API Avanzate

Confronto con Altri Test Runner

In questa pagina

Perché Vitest ​

NOTA

Questa guida presuppone una familiarità con Vite. Per approfondire, si consiglia di leggere la Guida Perché Vite e di guardare Strumenti frontend di nuova generazione con ViteJS, uno streaming in cui Evan You ha presentato e spiegato i concetti chiave.

La necessità di un Test Runner nativo di Vite ​

Il supporto nativo di Vite per i modelli web comuni, funzionalità come le importazioni glob e le primitive SSR, insieme ai suoi numerosi plugin e integrazioni, stanno alimentando un ecosistema vivace. Il suo approccio allo sviluppo e alla build è fondamentale per il suo successo. Per la documentazione, esistono diverse alternative basate su SSG e alimentate da Vite. Tuttavia, l'approccio di Vite ai test unitari non è stato finora ben definito. Le opzioni esistenti, come Jest, sono state create in un contesto diverso. C'è molta duplicazione tra Jest e Vite, costringendo gli utenti a configurare due pipeline distinte.

L'utilizzo del server di sviluppo Vite per trasformare i file durante il testing consente di creare un runner semplice che non deve gestire la complessità della trasformazione dei file sorgente e può concentrarsi unicamente sul fornire la migliore esperienza di sviluppo (DX) durante il testing. È un test runner che utilizza la stessa configurazione della tua App (tramite vite.config.js), condividendo una pipeline di trasformazione comune durante lo sviluppo, la compilazione e il test. È inoltre estensibile con la stessa API dei plugin che consente a te e ai manutentori dei tuoi strumenti di fornire un'integrazione di prima classe con Vite. Uno strumento costruito pensando a Vite fin dall'inizio, sfruttando i suoi miglioramenti in DX, come il suo Hot Module Reload (HMR) istantaneo. Questo è Vitest, un framework di testing di nuova generazione alimentato da Vite.

Data l'enorme adozione di Jest, Vitest fornisce un'API compatibile che ti consente di usarlo come sostituto diretto nella maggior parte dei progetti. Include anche le funzionalità più comuni richieste durante la configurazione dei tuoi test unitari (mocking, snapshot, coverage). Vitest si preoccupa molto delle prestazioni e utilizza i thread dei worker per eseguire il più possibile in parallelo. In alcuni casi, i test sono stati eseguiti un ordine di grandezza più velocemente. La modalità watch è abilitata per impostazione predefinita, allineandosi al modo in cui Vite promuove un'esperienza incentrata sullo sviluppo. Anche con tutti questi miglioramenti in DX, Vitest rimane leggero scegliendo attentamente le sue dipendenze (o incorporando direttamente le parti necessarie).

Vitest mira a posizionarsi come il Test Runner preferito per i progetti Vite, e come una valida alternativa anche per i progetti che non utilizzano Vite.

Continua a leggere nella Guida introduttiva

In cosa Vitest è diverso da X? ​

Puoi consultare la sezione Confronti per maggiori dettagli su come Vitest differisce da altri strumenti simili.

Pager
Pagina successivaPer Iniziare

Rilasciato sotto la licenza MIT.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/why

Rilasciato sotto la licenza MIT.

Copyright (c) 2021-Present Vitest Team