Jasmine Framework Tutorial: Enhedstest med eksempel

Hvad er JasmineJS?

Jasmine er en open source og mest populær JavaScript bibliotek testramme til at teste enhver form for JavaScript applikation. Jasmine følger Behavior Driven Development (BDD) procedure for at sikre, at hver linje af JavaScript-sætningen er korrekt enhedstestet.

Hvad bruges Jasmine Framework til?

Test er et nøgleelement i enhver applikation. Til NodeJS-enhedstest kaldes den tilgængelige ramme for test Jasmine. I begyndelsen af ​​2000 var der en ramme for test JavaScript applikationer kaldet JsUnit. Later denne ramme blev opgraderet og er nu kendt som Jasmine.

Jasmine hjælper med at automatisere Enhedstest, noget som er blevet en ganske vigtig praksis ved udvikling og implementering af moderne webapplikationer.

I denne Jasmine-tutorial lærer du, hvordan du får dit miljø opsætning med Jasmine, og hvordan du kører Jasmine-tests for din første Node.js-applikation.

Jasmine til test af Node.js-applikationer

Jasmine er en Adfærdsdrevet udvikling (BDD) testramme for JavaManuskript. Det gør den ikke stole på browsere, DOM eller andre JavaScriptramme. Det er således velegnet til websteder, Node.js-projekter eller hvor som helst det JavaScript kan køre. For at begynde at bruge Jasmine skal du først downloade og installere de nødvendige Jasmine-moduler.

Sådan opsætter du Jasmine testmiljø

Dernæst i denne Jasmine Node JS-tutorial skal du initialisere dit miljø og inspicere jasmine-konfigurationsfilen. Nedenstående trin viser, hvordan du opsætter Jasmine i dit miljø

Trin 1) Installer NPM-moduler
Du er nødt til Installer NPM jasmin-modul til at bruge jasmin-rammen fra en Node-applikation. For at installere jasmin-node-modulet skal du køre nedenstående kommando.

npm installer jasmine-node

Trin 2) Initialiser jasminmiljøet
Initialisering af projektet – Ved at gøre dette opretter jasmine en spec-mappe og konfigurations-json til dig. Spec-mappen bruges til at gemme alle dine testfiler. Ved at gøre dette vil jasmine vide, hvor alle dine test er, og derefter kan udføre dem i overensstemmelse hermed. Det JSON fil bruges til at gemme specifikke konfigurationsoplysninger om jasmin.

For at initialisere jasminmiljøet skal du køre kommandoen nedenfor

jasmin init

Trin 3) Undersøg din konfigurationsfil.
Konfigurationsfilen vil blive gemt i spec/support-mappen som jasmine.json. Denne fil opregner de kildefiler og spec-filer, du gerne vil have, at Jasmine runner skal inkludere.

Nedenstående skærmbillede viser et typisk eksempel på filen package.json til jasmin.

Konfigurer Jasmine testmiljø

  1. Bemærk, at spec-mappen er angivet her. Som nævnt tidligere, når jasmine kører, søger den efter alle tests i denne mappe.
  2. Den næste ting at bemærke er parameteren spec_files – Dette angiver, at uanset hvilke testfiler der oprettes, skal de tilføjes 'spec' nøgleordet.

Næste i denne Jasmine framework tutorial vil vi lære, hvordan man bruger Jasmine til at teste Node.js applikationer.

Sådan bruger du Jasmine til at teste Node.js-applikationer

For at bruge Jasmine-enhedstest til Node.js-applikationer skal en række trin følges.

I vores eksempel nedenfor skal vi definere et modul, som tilføjer 2 tal, som skal testes. Vi vil derefter definere en separat kodefil med testkoden og derefter bruge jasmin til at teste Tilføj-funktionen i overensstemmelse hermed.

Trin 1) Definer den kode, der skal testes. Vi skal definere en funktion, som tilføjer 2 tal og returnerer resultatet. Denne kode vil blive skrevet i en fil kaldet "Add.js."

Brug Jasmine til at teste Node.js-applikationer

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

Kode Forklaring

  1. Nøgleordet "eksport" bruges til at sikre, at den funktionalitet, der er defineret i denne fil, faktisk kan tilgås af andre filer.
  2. Vi definerer derefter en funktion kaldet 'AddNumber'. Denne funktion er defineret til at tage 2 parametre, a og b. Funktionen tilføjes til modulet "eksporter" for at gøre funktionen til en offentlig funktion, der kan tilgås af andre applikationsmoduler.
  3. Vi får endelig vores funktion til at returnere parametrenes merværdi.

Trin 2) Dernæst skal vi definere vores jasmin-testkode, som vil blive brugt til at teste vores "Tilføj"-funktion i Add.js-filen. Nedenstående kode skal indsætte en fil kaldet add-spec.js.

Bemærk: – Ordet 'spec' skal tilføjes til testfilen, så det kan detekteres af jasmin.

Brug Jasmine til at teste Node.js-applikationer

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 skal først inkludere vores Add.js-fil, så vi kan teste funktionen 'AddNumber' i denne fil.
  2. Vi er nu ved at lave vores testmodul. Første del af testmodulet er at beskrive en metode, som grundlæggende giver et navn til vores test. I dette tilfælde er navnet på vores test "Addition".
  3. Den næste bit er at give en beskrivelse af vores test ved hjælp af 'it'-metoden.
  4. Vi påberåber nu vores Addnumber-metode og sender 2 parametre 5 og 6 ind. Dette vil blive videregivet til vores Addnumber-metode i App.js-filen. Returværdien gemmes derefter i en variabel kaldet værdi.
  5. Det sidste trin er at lave sammenligningen eller vores faktiske test. Da vi forventer, at værdien returneret af Addnumber-funktionen er 11, definerer vi dette ved hjælp af metoden expect(value).toBe(den forventede værdi).

Produktion

  1. For at køre testen skal man køre kommandoen jasmine.
  2. Nedenstående skærmbillede viser, at efter at jasmine-kommandoen er kørt, vil den registrere, at der er en test kaldet add-spec.js og udføre denne test i overensstemmelse hermed. Hvis der er fejl i testen, vil den blive vist i overensstemmelse hermed.

Brug Jasmine til at teste Node.js-applikationer

Resumé

  • For at teste en node.js applikation, skal jasmin-frameworket installeres først. Dette gøres ved at bruge Node-pakkehåndteringen.
  • Testkoden skal skrives i en separat fil, og ordet 'spec' skal føjes til filnavnet. Kun hvis dette er gjort, vil jasmine være i stand til at registrere, at en fil skal køres.
  • For at køre testen skal du udføre jasmin-kommandoen. Dette vil finde alle filer, der har 'spec'-ordet knyttet til sig, og køre filen i overensstemmelse hermed.