Yksinkertaisten testien luominen Mocha ja Chai

Perustestin rakentaminen käyttämällä Mocha ja Chai

Voit luoda perustestin käyttämällä Mocha ja Chai -toimintoa seuraavasti:

1. Asenna Mocha ja Chai: Käytä npm:ää(Node Package Manager) asentaaksesi Mocha Node.js Chai -projektisi. Suorita seuraava komento projektihakemistossasi:

npm install mocha chai --save-dev

2. Luo testitiedosto: Luo uusi tiedosto, esimerkiksi test.js, ja tuo seuraavat ilmoitukset käytettäväksi Mocha ja 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. Suorita testi: Avaa pääte ja suorita mocha  testit suorittamalla komento. Jos kaikki sujuu hyvin, näet tulokset terminaalissa.

Tämä perustesti käyttää Mocha ja Chai tarkistaa yksinkertaisen laskelman. Yllä olevassa esimerkissä tarkistamme, että operaation tuloksen 2 + 2 tulee olla yhtä suuri kuin 4. Jos tulos on oikea, testi menee läpi.

Lisäämällä describe  ja it  lohkoja voit rakentaa monimutkaisempia testejä ja tarkistaa lähdekoodisi eri osia.

Huomaa, että voit käyttää testaukseen myös muita vahvistusmenetelmiä Chai, kuten assert tai. should Tarkka käyttö riippuu valinnastasi ja siitä, miten haluat järjestää testikoodisi.

 

Väitteiden ja kyselyiden käyttäminen funktion tulosten tarkistamiseen

Käytettäessä Mocha ja Chai testattaessa voit käyttää väitteitä ja kyselyitä funktioiden tulosten tarkistamiseen. Tässä on esimerkkejä väitteiden ja kyselyjen käyttämisestä funktion tulosten tarkistamiseen:

1. Tarkista tietyn arvon palauttavan funktion tulos expect väitteen ja kyselyn avulla: to.equal

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

2. Käytä "expect"-väitystä ja kyselyä to.be.true tai to.be.false tarkistaaksesi funktion tulos, joka palauttaa loogisen arvon:

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

3. Käytä "expect"-väitystä ja to.be.null kyselyä or to.be.undefined tarkistaaksesi funktion tulos, joka palauttaa nollan tai määrittelemättömän arvon:

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

4. Tarkista expect väitteen ja to.include kyselyn avulla, sisältyykö arvo taulukkoon tai merkkijonoon:

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

5. Tarkista taulukon tai merkkijonon pituus expect väitteen ja kyselyn avulla: to.have.lengthOf

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

Nämä esimerkit ovat vain muutamia monista tavoista käyttää väitteitä ja kyselyitä Mocha ja Chai tarkistaa funktioiden tulokset. Voit mukauttaa ja käyttää sopivia väitteitä ja kyselyitä projektisi testaustarpeiden perusteella.

 

Onnistuneiden ja epäonnistuneiden testitapausten luominen

Kun kirjoitat testitapauksia Mocha ja kanssa Chai, on tärkeää kattaa sekä onnistuneet että epäonnistuneet skenaariot. Tässä on esimerkkejä testitapausten luomisesta sekä onnistuneille että epäonnistumisille:

1. Onnistunut testitapaus:

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. Vikatestitapaus:

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

Onnistuneessa testitapauksessa määrität funktion syötteen ja odotetun tuloksen. Sitten kutsut funktiota syötteellä ja vakuutat, että tulos vastaa odotettua arvoa.

Vikatestitapauksessa annat funktiolle virheellisen syötteen ja väität, että se aiheuttaa virheen. Tämä varmistaa, että toiminto käsittelee virheelliset syötteet tai virheolosuhteet oikein.

Kattamalla testitapauksissasi sekä onnistumis- että epäonnistumisskenaariot voit varmistaa, että koodisi testataan perusteellisesti ja käsittelee erilaisia ​​tilanteita asianmukaisesti.