Jest: un potente framework di test JavaScript

May 09 2023
Il test è una parte essenziale dello sviluppo del software. Assicura che il codice sia affidabile, funzioni come previsto e riduce la probabilità di errori.

Il test è una parte essenziale dello sviluppo del software. Assicura che il codice sia affidabile, funzioni come previsto e riduce la probabilità di errori. I framework di test hanno fatto molta strada dai primi giorni dei test manuali. Oggi, i framework di test automatizzati come Jest rendono i test in JavaScript un gioco da ragazzi.

Cos'è Jest Framework?

Jest è un framework di test JavaScript veloce, semplice e facile da usare. È uno strumento open source sviluppato da Facebook ed è comunemente utilizzato per testare le applicazioni React, ma può essere utilizzato anche con altri framework come Angular, Vue e Node.js. Jest è basato su Jasmine , un framework di sviluppo basato sul comportamento per testare il codice JavaScript.

Caratteristiche di Jest Framework

  1. Test rapidi e parallelizzati : Jest esegue i test in parallelo, il che accelera notevolmente il processo di test.
  2. Test di istantanee : Jest consente di acquisire un'istantanea dell'output di un componente e confrontarla con modifiche future per garantire che l'output non sia cambiato in modo imprevisto.
  3. Derisione e spie : Jest fornisce un potente sistema di derisione che consente di simulare il comportamento di dipendenze o funzioni esterne difficili da testare. Puoi anche utilizzare le spie per tenere traccia delle chiamate di funzione e degli argomenti.
  4. Rapporti sulla copertura del codice : Jest genera rapporti sulla copertura del codice che mostrano quanto del tuo codice è coperto dai tuoi test. Questo ti aiuta a identificare le aree della tua base di codice che necessitano di ulteriori test.
  5. Test runner integrato: Jest include un test runner che esegue automaticamente i test e fornisce output dettagliati e messaggi di errore.
  6. Configurazione semplice: Jest è facile da configurare e viene fornito con impostazioni predefinite ragionevoli che funzionano per la maggior parte dei progetti. Puoi anche personalizzare Jest in base alle tue esigenze specifiche .
  7. Configurazione zero per piccoli progetti: per piccoli progetti, Jest può essere utilizzato con configurazione zero. Ciò significa che puoi iniziare subito a scrivere i test senza doversi preoccupare della configurazione.
  1. Complessità: Jest può essere complesso da impostare e configurare per progetti più grandi. Ha molte opzioni di configurazione e richiede una certa conoscenza su come scrivere i test.
  2. Prestazioni lente: Jest può essere lento da eseguire, soprattutto per suite di test di grandi dimensioni. Questo può essere un problema per gli sviluppatori che devono eseguire test frequentemente come parte del loro flusso di lavoro.
  3. Supporto della comunità limitato: sebbene Jest abbia una vasta comunità di utenti, potrebbe non essere ampiamente supportato come altri framework di test come Mocha o Jasmine.
  4. Mancanza di flessibilità: Jest è una soluzione di test completa con i propri strumenti di reporting di asserzioni, derisioni e copertura. Sebbene ciò possa essere conveniente, potrebbe non fornire lo stesso livello di flessibilità dell'utilizzo di librerie separate per queste attività.

Jest può essere installato utilizzando npm o filato. Una volta installato, puoi usarlo per testare il tuo codice. Jest cerca file nella cartella tests o file con estensione .test.js o .spec.js

Per installare Jest, utilizzare il seguente comando:

$ npm install -g jest

Aggiungi la seguente sezione al tuo file package.json

{
  "scripts": {
    "test": "jest"
  }
}

{
  "name": "jest-e2e",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "jest"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "jest": "^25.1.0"
  }
}

Crea un file js denominato index.js con una funzione da testare. Per esempio:

Ora, crea un file di test nella stessa cartella, denominato sum.test.js, per testare la funzione. Nel file di test importare la funzione per eseguire il codice nel test. Per esempio:

Successivamente, scrivi i test per la funzione utilizzando i test in stile BDD di Jest con un blocco di descrizione e più blocchi di test. Per esempio:

Per eseguire questo test, esegui semplicemente il comando " npm test " nel terminale o nel prompt dei comandi nella posizione del progetto.

output del caso di test

Conclusione

Il framework di test Jest è ottimo per testare il codice JavaScript. È veloce, facile da usare e può essere integrato nei test automatizzati. L'uso di Jest aiuta gli sviluppatori a creare codice affidabile e gestibile. In questo blog, abbiamo trattato le basi di Jest, come installarlo e come testare semplici file JavaScript. Nel complesso, Jest è un potente strumento per creare codice JavaScript di alta qualità.