Pagrindinio testo kūrimas naudojant 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 galėtumėte naudoti 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.
Šis pagrindinis testas naudoja Mocha ir Chai, kad patikrintų paprastą skaičiavimą. Aukščiau pateiktame pavyzdyje patikriname, ar operacijos rezultatas 2 + 2turi 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 taip pat galite naudoti kitus „Chai“ pateiktus tvirtinimo metodus, tokius kaip 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
Kai testavimui naudojate Mocha ir Chai, funkcijų rezultatams patikrinti galite naudoti teiginius ir užklausas. Štai keletas teiginių ir užklausų naudojimo funkcijų rezultatams patikrinti pavyzdžių:
1. Naudokite expectteiginį ir to.equaluž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.truearba to.be.falsenorė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.nullarba 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 expectteiginį ir to.includeužklausą, kad patikrintumėte, ar reikšmė įtraukta į masyvą arba eilutę:
const result = myFunction();
expect(result).to.include(expectedValue);
5. Naudokite expectteiginį ir to.have.lengthOfuž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 ir Chai, kad patikrintumėte 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šant bandomuosius atvejus su Mocha ir Chai, svarbu aprėpti 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.