Paprastų testų kūrimas naudojant Mocha ir Chai

Sukurkite pagrindinį testą naudodami Mocha ir Chai

Norėdami sukurti pagrindinį testą naudodami Mocha ir Chai, galite atlikti šiuos veiksmus:

1. Įdiekite Mocha ir Chai: naudokite npm(Node Package Manager), kad įdiegtumėte Mocha ir Chai savo Node.js projekte. Savo projekto kataloge paleiskite šią komandą:

npm install mocha chai --save-dev

2. Sukurkite bandomąjį failą: sukurkite naują failą, pavyzdžiui test.js, ir importuokite šias deklaracijas, kad naudotumėte Mocha ir 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. Vykdykite testą: atidarykite terminalą ir paleiskite mocha  komandą, kad atliktumėte testus. Jei viskas vyks sklandžiai, rezultatus matysite rodomus terminale.

Šiame pagrindiniame teste naudojami Mocha ir Chai patikrinti paprastas skaičiavimas. Aukščiau pateiktame pavyzdyje patikriname, ar operacijos rezultatas 2 + 2 turi būti lygus 4. Jei rezultatas teisingas, testas bus sėkmingas.

Pridėdami describe  ir it  blokuodami galite sukurti sudėtingesnius testus ir patikrinti įvairias šaltinio kodo dalis.

Atminkite, kad testavimui taip pat galite naudoti kitus tvirtinimo metodus, pateiktus Chai, pvz., assert arba. should Konkretus naudojimas priklauso nuo jūsų pasirinkimo ir nuo to, kaip norite tvarkyti testo kodą.

 

Teiginių ir užklausų naudojimas funkcijų rezultatams patikrinti

Naudodami Mocha ir Chai testuodami galite naudoti teiginius ir užklausas, kad patikrintumėte funkcijų rezultatus. Štai keletas teiginių ir užklausų naudojimo funkcijų rezultatams patikrinti pavyzdžių:

1. Naudokite expect teiginį ir to.equal užklausą, kad patikrintumėte funkcijos, kuri grąžina konkrečią reikšmę, rezultatą:

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

2. Naudokite teiginį „tikėtis“ ir užklausą to.be.true arba to.be.false norėdami patikrinti funkcijos, kuri grąžina loginę reikšmę, rezultatą:

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

3. Naudokite teiginį „tikėtis“ ir užklausą to.be.null arba to.be.undefined, kad patikrintumėte funkcijos, kuri grąžina nulinę arba neapibrėžtą reikšmę, rezultatą:

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

4. Naudokite expect teiginį ir to.include užklausą, kad patikrintumėte, ar reikšmė įtraukta į masyvą arba eilutę:

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

5. Naudokite expect teiginį ir to.have.lengthOf užklausą, kad patikrintumėte masyvo arba eilutės ilgį:

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

Šie pavyzdžiai yra tik keli iš daugelio būdų, kaip naudoti teiginius ir užklausas Mocha bei Chai patikrinti funkcijų rezultatus. Galite tinkinti ir naudoti atitinkamus tvirtinimus ir užklausas pagal savo projekto testavimo poreikius.

 

Sėkmingų ir nesėkmingų bandomųjų atvejų kūrimas

Rašydami bandomuosius atvejus naudodami Mocha ir Chai, svarbu apimti ir sėkmingus, ir nesėkmingus scenarijus. Čia pateikiami sėkmingų ir nesėkmingų scenarijų bandomųjų atvejų kūrimo pavyzdžiai:

1. Sėkmingas bandomasis atvejis:

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. Nesėkmės bandymo atvejis:

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);  
  });  
});

Sėkmingo bandymo atveju apibrėžiate funkcijos įvestį ir laukiamą rezultatą. Tada iškviečiate funkciją su įvestimi ir patvirtinate, kad rezultatas atitinka numatomą reikšmę.

Gedimo bandymo atveju pateikiate netinkamą funkcijos įvestį ir tvirtinate, kad ji sukelia klaidą. Taip užtikrinama, kad funkcija tinkamai tvarkytų netinkamas įvesties ar klaidų sąlygas.

Savo bandomaisiais atvejais apimdami sėkmingus ir nesėkmingus scenarijus galite užtikrinti, kad jūsų kodas būtų nuodugniai išbandytas ir tinkamai tvarkytų įvairias situacijas.