Il test è un elemento chiave per qualsiasi applicazione. Per Node.js, il framework disponibile per Testing si chiama Jasmine. All'inizio del 2000, esisteva un framework per testare le applicazioni JavaScript chiamato JsUnit. Successivamente questo framework è stato aggiornato ed è ora noto come Jasmine.
Jasmine aiuta negli Unit Testing automatizzati, qualcosa che è diventato una pratica fondamentale durante lo sviluppo e la distribuzione di applicazioni web moderne.
In questo tutorial imparerai come configurare il tuo ambiente con jasmine e come iniziare a testare la tua prima applicazione Node.js con jasmine.
In questo tutorial imparerai-
-
Panoramica di Jasmine per testare le applicazioni Node.js.
-
Come utilizzare Jasmine per testare le applicazioni Node.js.
Panoramica di Jasmine per testare le applicazioni Node.js.
Jasmine è un framework di test BDD (Behavior Driven Development) per JavaScript. Non si basa su browser, DOM o qualsiasi framework JavaScript. Pertanto, è adatto per siti Web, progetti Node.js o ovunque possa essere eseguito JavaScript. Per iniziare a utilizzare Jasmine, devi prima scaricare e installare i moduli Jasmine necessari.
Successivamente, dovresti inizializzare il tuo ambiente e ispezionare il file di configurazione di jasmine. I passaggi seguenti mostrano come configurare Jasmine nel tuo ambiente
Passaggio 1) Installazione dei moduli NPM
È necessario installare il modulo jasmine per utilizzare il framework jasmine dall'interno di un'applicazione Node. Per installare il modulo jasmine-node, esegui il comando seguente.
npm installa jasmine-node
Passaggio 2) Inizializzazione del progetto - In questo modo, jasmine crea una directory spec e un json di configurazione per te. La directory spec viene utilizzata per memorizzare tutti i file di test. In questo modo, jasmine saprà dove si trovano tutti i tuoi test e quindi potrà eseguirli di conseguenza. Il file JSON viene utilizzato per memorizzare informazioni di configurazione specifiche su jasmine.
Per inizializzare l'ambiente jasmine, esegui il comando seguente
gelsomino init
Passaggio 3) Ispeziona il tuo file di configurazione. Il file di configurazione verrà archiviato nella cartella spec / support come jasmine.json. Questo file enumera i file di origine e i file delle specifiche che desideri vengano inclusi dal runner Jasmine.
Lo screenshot qui sotto mostra un tipico esempio del file package.json per jasmine.
- Notare che la directory spec è specificata qui. Come notato in precedenza, quando jasmine viene eseguito, cerca tutti i test in questa directory.
- La prossima cosa da notare è il parametro spec_files - Questo denota che qualunque file di test venga creato dovrebbe essere aggiunto con la parola chiave 'spec'.
Come utilizzare Jasmine per testare le applicazioni Node.js.
Per utilizzare Jasmine per testare le applicazioni Node.js, è necessario seguire una serie di passaggi.
Nel nostro esempio qui sotto, definiremo un modulo che aggiunge 2 numeri che devono essere testati. Definiremo quindi un file di codice separato con il codice di test e quindi utilizzeremo jasmine per testare la funzione Aggiungi di conseguenza.
Passaggio 1) Definire il codice che deve essere testato. Definiremo una funzione che aggiungerà 2 numeri e restituirà il risultato. Questo codice verrà scritto in un file chiamato "Add.js."
var exports=module.exports={};exports.AddNumber=function(a,b){return a+b;};
Spiegazione del codice:
- La parola chiave "export" viene utilizzata per garantire che la funzionalità definita in questo file sia effettivamente accessibile da altri file.
- Stiamo quindi definendo una funzione chiamata "AddNumber". Questa funzione è definita per accettare 2 parametri, a e b. La funzione viene aggiunta al modulo "esporta" per rendere la funzione una funzione pubblica accessibile da altri moduli dell'applicazione.
- Stiamo finalmente facendo in modo che la nostra funzione restituisca il valore aggiunto dei parametri.
Passaggio 2) Successivamente, dobbiamo definire il nostro codice di test jasmine, che verrà utilizzato per testare la nostra funzione "Aggiungi" nel file Add.js. Il codice seguente deve essere inserito in un file chiamato add-spec.js.
Nota : - La parola "spec" deve essere aggiunta al file di prova in modo che possa essere rilevata da jasmine.
Spiegazione del codice:
var app=require("… /Add.js");describe("Addition",function(){it("The function should add 2 numbers",function() {var value=app.AddNumber(5,6);expect(value).toBe(11);});});
- Dobbiamo prima includere il nostro file Add.js in modo da poter testare la funzione "AddNumber" in questo file.
- Stiamo ora creando il nostro modulo di test. La prima parte del modulo di test è descrivere un metodo che fondamentalmente dà un nome al nostro test. In questo caso, il nome del nostro test è "Addition".
- Il passo successivo è fornire una descrizione per il nostro test utilizzando il metodo "it".
- Ora invochiamo il nostro metodo Addnumber e inviamo 2 parametri 5 e 6. Questo verrà passato al nostro metodo Addnumber nel file App.js. Il valore restituito viene quindi memorizzato in una variabile denominata valore.
- Il passaggio finale è fare il confronto o il nostro test effettivo. Poiché ci aspettiamo che il valore restituito dalla funzione Addnumber sia 11, lo definiamo utilizzando il metodo wait (value) .toBe (il valore atteso).
Produzione
- Per eseguire il test, è necessario eseguire il comando jasmine.
- Lo screenshot qui sotto mostra che dopo aver eseguito il comando jasmine, rileverà che esiste un test chiamato add-spec.js ed eseguirà quel test di conseguenza. Se sono presenti errori nel test, verranno visualizzati di conseguenza.
Sommario
- Per testare un'applicazione Node.js, è necessario installare prima il framework jasmine. Questo viene fatto utilizzando il gestore di pacchetti Node.
- Il codice del test deve essere scritto in un file separato e la parola "spec" deve essere aggiunta al nome del file. Solo se questo viene fatto, jasmine sarà in grado di rilevare che un file deve essere eseguito.
- Per eseguire il test, è necessario eseguire il comando jasmine. Questo troverà tutti i file a cui è allegata la parola "spec" ed eseguirà il file di conseguenza.