Skip to content
Vitest 1
Main Navigation GuidaAPIConfigurazioneAvanzato
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

Guida

Perché Vitest

Introduzione

Funzionalità

Workspace

Interfaccia a riga di comando

Filtro dei test

Reporter

Coverage

Snapshot

Mocking

Test dei Tipi

Interfaccia Utente di Vitest

Modalità Browser

Test nel codice sorgente

Contesto del Test

Ambienti di Test

Estensione dei Matchers

Integrazione con gli IDE

Debugging

Confronti con altri Test Runner

Guida alla Migrazione

Errori Frequenti

Ottimizzare le Prestazioni

API

Riferimento API Test

Funzioni Mock

Vi

expect

expectTypeOf

assert

assertType

Configurazione

Gestione del file di configurazione di Vitest

Configurazione di Vitest

In questa pagina

Perché Vitest ​

NOTA

Questa guida presuppone che tu abbia familiarità con Vite. Un buon modo per iniziare è leggere la Guida al perché di Vite e Strumenti frontend di nuova generazione grazie a ViteJS, uno stream in cui Evan You ha fatto una demo spiegando i concetti principali.

La necessità di un test runner nativo per Vite ​

Il supporto nativo di Vite per i modelli web comuni, funzionalità come le importazioni glob e le primitive SSR, e i suoi numerosi plugin e integrazioni stanno favorendo un ecosistema vivace. Il processo di sviluppo e build è fondamentale per il suo successo. Per la documentazione, ci sono diverse alternative basate su SSG (Static Site Generation) alimentate da Vite. Tuttavia, la gestione dei test unitari in Vite non è stata altrettanto chiara. Le opzioni esistenti come Jest sono state create in un contesto diverso. C'è molta duplicazione tra Jest e Vite, il che obbliga gli utenti a configurare due pipeline distinte.

Sfruttare il server di sviluppo di Vite per trasformare i tuoi file durante i test permette la creazione di un runner semplice. Questo runner non deve affrontare la complessità della trasformazione dei file sorgente e può concentrarsi esclusivamente sull'offrire la migliore esperienza di sviluppo (DX) durante i test. 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 build e il testing. Questo è estensibile grazie alla stessa API per plugin, consentendo a te e ai manutentori dei tuoi strumenti di fornire un'integrazione di prima classe con Vite. Uno strumento progettato fin dall'inizio pensando a Vite, che sfrutta i suoi miglioramenti nella DX, come il suo Hot Module Reload (HMR) istantaneo. Questo è Vitest, un framework di test di nuova generazione alimentato da Vite.

Data la vasta diffusione di Jest, Vitest fornisce un'API compatibile che ti consente di utilizzarlo come sostituto diretto nella maggior parte dei progetti. Include inoltre le funzionalità più comuni necessarie quando si impostano i test unitari (mocking, snapshot e code coverage). Vitest dà grande importanza alle prestazioni e utilizza i Worker threads per eseguire il più possibile in parallelo. In alcuni casi si è osservata un'esecuzione dei test più veloce di un ordine di grandezza. La modalità Watch è abilitata per impostazione predefinita, allineandosi all'obiettivo di Vite di offrire un'esperienza di sviluppo ottimale. Anche con tutti questi miglioramenti nella DX, Vitest rimane leggero scegliendo attentamente le sue dipendenze (o incorporando direttamente i componenti necessari).

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

Continua a leggere nella Guida introduttiva

In che modo Vitest è diverso da X? ​

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

Pager
Pagina successivaIntroduzione

Rilasciato sotto la licenza MIT.

Copyright (c) 2024 Mithril Contributors

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

Rilasciato sotto la licenza MIT.

Copyright (c) 2024 Mithril Contributors