Krijimi i testeve të thjeshta me Mocha dhe Chai

Ndërtimi i një testi bazë duke përdorur Mocha dhe Chai

Për të ndërtuar një test bazë duke përdorur Mocha dhe Chai, mund të ndiqni këto hapa:

1. Instaloni Mocha dhe Chai: Përdorni npm(Menaxheri i paketës së nyjeve) për të instaluar Mocha dhe Chai në projektin tuaj Node.js. Ekzekutoni komandën e mëposhtme në drejtorinë e projektit tuaj:

npm install mocha chai --save-dev

2. Krijoni një skedar testimi: Krijoni një skedar të ri, për shembull test.js, dhe importoni deklaratat e mëposhtme për t'u përdorur Mocha dhe Chai:

const chai = require('chai');  
const expect = chai.expect;  
  
describe('Example Test Suite',() => {  
  it('should pass the test',() => {  
    expect(2 + 2).to.equal(4);  
  });  
});

3. Ekzekutoni testin: Hapni terminalin dhe ekzekutoni mocha  komandën për të ekzekutuar testet. Nëse gjithçka shkon mirë, rezultatet do të shfaqen në terminal.

Ky test bazë përdor Mocha dhe Chai për të kontrolluar një llogaritje të thjeshtë. Në shembullin e mësipërm, ne kontrollojmë që rezultati i 2 + 2 operacionit të jetë i barabartë me 4. Nëse rezultati është i saktë, testi do të kalojë.

Duke shtuar describe  dhe it  bllokuar, ju mund të ndërtoni teste më komplekse dhe të kontrolloni pjesë të ndryshme të kodit tuaj burimor.

Vini re se mund të përdorni edhe metoda të tjera pohimi të ofruara nga Chai, të tilla si assert ose should, për testim. Përdorimi specifik varet nga zgjedhja juaj dhe nga mënyra se si dëshironi të organizoni kodin tuaj të testimit.

 

Përdorimi i pohimeve dhe pyetjeve për të verifikuar rezultatet e funksionit

Kur përdorni Mocha dhe Chai për testim, mund të përdorni pohime dhe pyetje për të kontrolluar rezultatet e funksioneve. Këtu janë disa shembuj të përdorimit të pohimeve dhe pyetjeve për të kontrolluar rezultatet e funksionit:

1. Përdorni expect pohimin dhe to.equal pyetjen për të kontrolluar rezultatin e një funksioni që kthen një vlerë specifike:

const result = myFunction();  
expect(result).to.equal(expectedValue);

2. Përdorni pohimin `prit` dhe pyetjen to.be.true ose to.be.false për të kontrolluar rezultatin e një funksioni që kthen një vlerë boolean:

const result = myFunction();  
expect(result).to.be.true; // or expect(result).to.be.false;

3. Përdorni pohimin `prit` dhe to.be.null pyetjen ose to.be.undefined për të kontrolluar rezultatin e një funksioni që kthen një vlerë nule ose të papërcaktuar:

const result = myFunction();  
expect(result).to.be.null; // or expect(result).to.be.undefined;

4. Përdorni expect pohimin dhe to.include pyetjen për të kontrolluar nëse një vlerë është përfshirë në një grup ose varg:

const result = myFunction();  
expect(result).to.include(expectedValue);

5. Përdorni expect pohimin dhe to.have.lengthOf pyetjen për të kontrolluar gjatësinë e një vargu ose vargu:

const result = myFunction();  
expect(result).to.have.lengthOf(expectedLength);

Këta shembuj janë vetëm disa nga shumë mënyra për të përdorur pohimet dhe pyetjet Mocha dhe Chai për të kontrolluar rezultatet e funksionit. Ju mund të personalizoni dhe përdorni pohimet dhe pyetjet e duhura bazuar në nevojat e testimit të projektit tuaj.

 

Krijimi i rasteve të testimit të suksesshëm dhe të dështuar

Kur shkruani raste testimi me Mocha dhe Chai, është e rëndësishme të mbulohen skenarët e suksesshëm dhe të dështimit. Këtu janë shembuj të krijimit të rasteve të provës për skenarët e suksesshëm dhe të dështimit:

1. Rasti i suksesshëm i testit:

describe('myFunction',() => {  
  it('should return the expected result',() => {  
    // Arrange  
    const input = // provide the input for the function  
    const expected = // define the expected result  
  
    // Act  
    const result = myFunction(input);  
  
    // Assert  
    expect(result).to.equal(expected);  
  });  
});

2. Rasti i testit të dështimit:

describe('myFunction',() => {  
  it('should throw an error when invalid input is provided',() => {  
    // Arrange  
    const invalidInput = // provide invalid input for the function  
  
    // Act and Assert  
    expect(() => myFunction(invalidInput)).to.throw(Error);  
  });  
});

Në rastin e suksesshëm të testit, ju përcaktoni hyrjen për funksionin dhe rezultatin e pritur. Pastaj, ju e thërrisni funksionin me hyrjen dhe pohoni se rezultati përputhet me vlerën e pritur.

Në rastin e testit të dështimit, ju jepni të dhëna të pavlefshme për funksionin dhe pohoni se ai shkakton një gabim. Kjo siguron që funksioni trajton siç duhet hyrjen e pavlefshme ose kushtet e gabimit.

Duke mbuluar skenarët e suksesshëm dhe të dështimit në rastet tuaja të provës, mund të siguroheni që kodi juaj të testohet tërësisht dhe të trajtojë situata të ndryshme në mënyrë të përshtatshme.