Jasmine Framework Tutorial: Enhetstesting med eksempel

Hva er JasmineJS?

Jasmine er en åpen kildekode og mest populær JavaSkriptbibliotek testramme for å teste alle slags JavaSkriptapplikasjon. Jasmine følger Behavior Driven Development (BDD) prosedyre for å sikre at hver linje av JavaSkriptsetningen er skikkelig enhetstestet.

Hva brukes Jasmine Framework til?

Testing er et nøkkelelement for enhver applikasjon. For NodeJS-enhetstesting kalles rammeverket som er tilgjengelig for testing Jasmine. Tidlig i 2000 var det et rammeverk for testing JavaScript applikasjoner kalt JsUnit. Later dette rammeverket ble oppgradert og er nå kjent som Jasmine.

Jasmine hjelper i automatisert Enhetstesting, noe som har blitt en ganske viktig praksis ved utvikling og distribusjon av moderne nettapplikasjoner.

I denne Jasmine-opplæringen lærer du hvordan du setter opp miljøet ditt med Jasmine og hvordan du kjører Jasmine-tester for din første Node.js-applikasjon.

Jasmine for testing av Node.js-applikasjoner

Jasmine er en Atferdsdrevet utvikling (BDD) testramme for JavaManus. Det gjør det ikke stole på nettlesere, DOM eller andre JavaSkriptramme. Dermed er den egnet for nettsteder, Node.js-prosjekter eller hvor som helst det JavaSkriptet kan kjøres. For å begynne å bruke Jasmine, må du først laste ned og installere de nødvendige Jasmine-modulene.

Hvordan sette opp Jasmine testmiljø

Neste i denne Jasmine Node JS-opplæringen, må du initialisere miljøet ditt og inspisere jasmine-konfigurasjonsfilen. Trinnene nedenfor viser hvordan du konfigurerer Jasmine i miljøet ditt

Trinn 1) Installer NPM-moduler
Du må Installer NPM jasmine-modul for å bruke jasmin-rammeverket fra en Node-applikasjon. For å installere jasmine-node-modulen, kjør kommandoen nedenfor.

npm installer jasmine-node

Trinn 2) Initialiser Jasmine-miljøet
Initialisere prosjektet – Ved å gjøre dette oppretter jasmine en spesifikasjonskatalog og konfigurasjons-json for deg. Spesifikasjonsmappen brukes til å lagre alle testfilene dine. Ved å gjøre dette vil jasmine vite hvor alle testene dine er, og deretter kan utføre dem deretter. De JSON fil brukes til å lagre spesifikk konfigurasjonsinformasjon om jasmine.

For å initialisere jasminmiljøet, kjør kommandoen nedenfor

jasmin init

Trinn 3) Inspiser konfigurasjonsfilen din.
Konfigurasjonsfilen vil bli lagret i spec/support-mappen som jasmine.json. Denne filen oppregner kildefilene og spesifikasjonsfilene du vil at Jasmine-løperen skal inkludere.

Skjermbildet nedenfor viser et typisk eksempel på filen package.json for jasmine.

Sett opp Jasmine testmiljø

  1. Merk at spesifikasjonskatalogen er spesifisert her. Som nevnt tidligere, når jasmine kjører, søker den etter alle testene i denne katalogen.
  2. Den neste tingen å merke seg er spec_files-parameteren – Dette angir at uansett hvilke testfiler som opprettes, skal de legges til med nøkkelordet 'spec'.

Neste i denne Jasmine-rammeveiledningen vil vi lære hvordan du bruker Jasmine til å teste Node.js-applikasjoner.

Hvordan bruke Jasmine til å teste Node.js-applikasjoner

For å bruke Jasmine-enhetstesting for Node.js-applikasjoner, må en rekke trinn følges.

I vårt eksempel nedenfor skal vi definere en modul som legger til 2 tall som må testes. Vi vil da definere en egen kodefil med testkoden og deretter bruke jasmine for å teste Add-funksjonen tilsvarende.

Trinn 1) Definer koden som skal testes. Vi skal definere en funksjon som legger til 2 tall og returnerer resultatet. Denne koden skal skrives i en fil som heter "Add.js."

Bruk Jasmine til å teste Node.js-applikasjoner

var exports=module.exports={};
exports.AddNumber=function(a,b)
{
return a+b;
};

Kode Forklaring

  1. Nøkkelordet "eksporter" brukes for å sikre at funksjonaliteten som er definert i denne filen faktisk kan nås av andre filer.
  2. Vi definerer da en funksjon kalt "AddNumber". Denne funksjonen er definert til å ta 2 parametere, a og b. Funksjonen legges til modulen "eksporterer" for å gjøre funksjonen til en offentlig funksjon som kan nås av andre applikasjonsmoduler.
  3. Vi får endelig funksjonen vår til å returnere tilleggsverdien til parameterne.

Trinn 2) Deretter må vi definere vår jasmin-testkode, som vil bli brukt til å teste vår "Add"-funksjon i Add.js-filen. Koden nedenfor må legge inn en fil som heter add-spec.js.

Merknader: – Ordet 'spesifikasjon' må legges til i testfilen slik at den kan oppdages av jasmin.

Bruk Jasmine til å teste Node.js-applikasjoner

Kode Forklaring

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);
});
});
  1. Vi må først inkludere Add.js-filen vår slik at vi kan teste 'AddNumber'-funksjonen i denne filen.
  2. Vi lager nå vår testmodul. Den første delen av testmodulen er å beskrive en metode som i utgangspunktet gir et navn til testen vår. I dette tilfellet er navnet på testen vår "Addition".
  3. Den neste biten er å gi en beskrivelse for testen vår ved å bruke 'it'-metoden.
  4. Vi påkaller nå Addnumber-metoden vår og sender inn 2 parametere 5 og 6. Dette vil bli sendt til Addnumber-metoden vår i App.js-filen. Returverdien lagres deretter i en variabel kalt verdi.
  5. Det siste trinnet er å gjøre sammenligningen eller vår faktiske test. Siden vi forventer at verdien returnert av Addnumber-funksjonen er 11, definerer vi dette ved å bruke metoden expect(value).toBe(den forventede verdien).

Produksjon

  1. For å kjøre testen, må man kjøre kommandoen jasmine.
  2. Skjermbildet nedenfor viser at etter at jasmine-kommandoen er kjørt, vil den oppdage at det er en test kalt add-spec.js og utføre den testen deretter. Hvis det er noen feil i testen, vil den vises tilsvarende.

Bruk Jasmine til å teste Node.js-applikasjoner

Sammendrag

  • For å teste a node.js applikasjonen, må jasmine-rammeverket installeres først. Dette gjøres ved å bruke Node-pakkebehandlingen.
  • Testkoden må skrives i en egen fil, og ordet 'spec' skal legges til filnavnet. Bare hvis dette er gjort vil jasmine kunne oppdage at en fil må kjøres.
  • For å kjøre testen må du utføre jasmine-kommandoen. Dette vil finne alle filene som har "spesifikasjons"-ordet knyttet til seg og kjøre filen deretter.