Yksinkertaisten testien luominen mokkan ja chain kanssa

Perustestin rakentaminen Mochalla ja Chailla

Voit rakentaa perustestin Mochalla ja Chailla seuraavasti:

1. Asenna Mocha ja Chai: Asenna Mocha ja Chai Node.js-projektiisi npm:llä (Node Package Manager). Suorita seuraava komento projektihakemistossasi:

npm install mocha chai --save-dev

2. Luo testitiedosto: Luo uusi tiedosto, esimerkiksi test.js, ja tuo seuraavat ilmoitukset Mocha- ja Chai-käyttöön:

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ää Mochaa ja Chaita yksinkertaisen laskelman tarkistamiseen. Yllä olevassa esimerkissä tarkistamme, että operaation tuloksen 2 + 2tulee 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 Chain tarjoamia vahvistusmenetelmiä, kuten assert tai . shouldTarkka käyttö riippuu valinnastasi ja siitä, miten haluat järjestää testikoodisi.

 

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

Kun käytät Mochaa ja Chaia testaukseen, 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 expectväitteen ja kyselyn avulla:to.equal

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

2. Käytä "expect"-väitystä ja kyselyä to.be.truetai to.be.falsetarkistaaksesi 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.nullkyselyä 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 expectväitteen ja to.includekyselyn avulla, sisältyykö arvo taulukkoon tai merkkijonoon:

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

5. Tarkista taulukon tai merkkijonon pituus expectvä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ä Mochassa ja Chaissa funktion tulosten tarkistamiseen. Voit mukauttaa ja käyttää sopivia väitteitä ja kyselyitä projektisi testaustarpeiden perusteella.

 

Onnistuneiden ja epäonnistuneiden testitapausten luominen

Kun kirjoitat testitapauksia Mochan ja Chain kanssa, 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.