Funksionet e testimit për hedhjen e përjashtimeve të sakta
Për të testuar për përjashtime, ne mund të përdorim throw
pohimin e dhënë nga Chai. Ky pohim na lejon të specifikojmë llojin e përjashtimit që duhet hedhur dhe çdo detaj shtesë që duam të vërtetojmë. Duke përfshirë këtë pohim në rastet tona të testimit, ne mund të sigurojmë që funksionet tona të sillen siç pritej dhe të trajtojnë kushtet e gabimit në mënyrë të përshtatshme.
Le të shqyrtojmë një shembull ku kemi një funksion që ndan dy numra. Ne duam të sigurojmë që funksioni bën një përjashtim kur pjesëtohet me zero. Mund të shkruajmë një rast testimi duke përdorur pohimin Chai 's throw
për të kontrolluar nëse funksioni hedh saktë a DivideByZeroError
kur pjesëtohet me zero.
const { expect } = require('chai');
function divide(a, b) {
if(b === 0) {
throw new Error('DivideByZeroError');
}
return a / b;
}
describe('divide',() => {
it('should throw DivideByZeroError when dividing by zero',() => {
expect(() => divide(10, 0)).to.throw('DivideByZeroError');
});
it('should return the correct result when dividing two numbers',() => {
expect(divide(10, 5)).to.equal(2);
});
});
Në shembullin e mësipërm, ne përdorim to.throw
pohimin për të verifikuar që divide
funksioni hedh a DivideByZeroError
kur pjesëtohet me zero. Pohimi është i mbështjellë në një funksion në mënyrë që të mund të kapë përjashtimin dhe të kryejë kontrollet e nevojshme.
Duke përfshirë teste për hedhjen e saktë të përjashtimeve, ne mund të sigurojmë që funksionet tona trajtojnë kushtet e gabimit në mënyrë të përshtatshme dhe ofrojnë reagime domethënëse kur ndodhin situata të papritura. Kjo ndihmon në përmirësimin e cilësisë së përgjithshme dhe besueshmërisë së kodit tonë.
Si përfundim, testimi i funksioneve që hedhin përjashtime është një aspekt i rëndësishëm i testimit të softuerit. Me pohimin Chai e 's throw
, ne mund të verifikojmë lehtësisht që funksionet tona hedhin përjashtimet e pritura kur është e nevojshme. Duke i përfshirë këto teste në strategjinë tonë të testimit, ne mund të përmirësojmë qëndrueshmërinë e aplikacioneve tona dhe të ofrojmë një përvojë më të mirë të përdoruesit.
Në artikullin e tretë të serisë "Node.js, Mocha, dhe Chai ", ne do të shqyrtojmë se si të testojmë funksionet dhe metodat duke përdorur Chai. Chai është një bibliotekë e fuqishme pohimi për testimin e vlerave dhe rezultateve në JavaScript kod.
Testimi i metodave të objekteve dhe sjelljeve të tyre
Për të verifikuar metodat e një objekti, ne mund të përdorim pohimet e ofruara nga kornizat e testimit si Mocha dhe Chai. Këto pohime na lejojnë të bëjmë pohime për vetitë dhe sjelljen e objekteve.
Le të shqyrtojmë një shembull ku kemi një objekt të quajtur calculator
me metoda për mbledhje, zbritje, shumëzim dhe pjesëtim. Ne duam të sigurohemi që këto metoda të kthejnë rezultatet e sakta. Ne mund të shkruajmë teste duke përdorur Chai pohimet e 's për të verifikuar sjelljen e këtyre metodave.
const { expect } = require('chai');
const calculator = {
add:(a, b) => a + b,
subtract:(a, b) => a- b,
multiply:(a, b) => a * b,
divide:(a, b) => a / b,
};
describe('calculator',() => {
it('should return the correct sum when adding two numbers',() => {
expect(calculator.add(5, 3)).to.equal(8);
});
it('should return the correct difference when subtracting two numbers',() => {
expect(calculator.subtract(5, 3)).to.equal(2);
});
it('should return the correct product when multiplying two numbers',() => {
expect(calculator.multiply(5, 3)).to.equal(15);
});
it('should return the correct quotient when dividing two numbers',() => {
expect(calculator.divide(6, 3)).to.equal(2);
});
});
Në shembullin e mësipërm, ne përdorim pohimin Chai ' expect
për të verifikuar që metodat e calculator
objektit kthejnë rezultatet e pritura. Çdo rast testimi fokusohet në një metodë specifike dhe kontrollon nëse kthen daljen e saktë për një hyrje të caktuar.
Duke ekzekutuar këto raste testimi, ne mund të sigurohemi që metodat e calculator
objektit të sillen siç priten dhe të japin rezultate të sakta.
Përveç kontrollit të vlerave të kthyera të metodave, ne mund të përdorim edhe pohime për të verifikuar vetitë dhe sjelljet e tjera të objekteve. Chai ofron një gamë të gjerë pohimesh që na lejojnë të bëjmë lloje të ndryshme pohimesh mbi objektet, të tilla si kontrollimi i vlerave të vetive, verifikimi i thirrjeve të metodave dhe më shumë.
Duke testuar tërësisht metodat e një objekti, ne mund të sigurojmë korrektësinë dhe besueshmërinë e tyre, gjë që kontribuon në cilësinë e përgjithshme të bazës sonë të kodit.