Utendakazi wa majaribio kwa kutupa vighairi sahihi
Ili kujaribu vighairi, tunaweza kutumia throw
madai yaliyotolewa na Chai. Madai haya huturuhusu kubainisha aina ya ubaguzi ambayo inapaswa kutupwa na maelezo yoyote ya ziada tunayotaka kuthibitisha. Kwa kujumuisha dai hili katika visa vyetu vya majaribio, tunaweza kuhakikisha kuwa vipengele vyetu vinatenda kazi inavyotarajiwa na kushughulikia hali za makosa ipasavyo.
Hebu tuchunguze mfano ambapo tuna kazi ambayo inagawanya nambari mbili. Tunataka kuhakikisha kuwa chaguo la kukokotoa linatoa ubaguzi wakati wa kugawanya kwa sifuri. Tunaweza kuandika kipochi cha majaribio kwa kutumia Chai madai throw
ya kuangalia kama chaguo la kukokotoa hutupwa kwa usahihi DivideByZeroError
wakati wa kugawanya kwa sifuri.
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);
});
});
Katika mfano ulio hapo juu, tunatumia to.throw
madai ili kuthibitisha kuwa divide
chaguo la kukokotoa hutupa a DivideByZeroError
wakati wa kugawanya kwa sifuri. Madai hayo yamefungwa katika kipengele cha kukokotoa ili iweze kupata ubaguzi na kufanya ukaguzi unaohitajika.
Kwa kujumuisha majaribio ya utupaji usiofuata kanuni, tunaweza kuhakikisha kuwa chaguo zetu za kukokotoa zinashughulikia hali ya hitilafu ipasavyo na kutoa maoni yenye maana wakati hali zisizotarajiwa zinatokea. Hii husaidia kuboresha ubora na uaminifu wa jumla wa nambari yetu.
Kwa kumalizia, utendakazi wa majaribio ambao hutupa tofauti ni kipengele muhimu cha upimaji wa programu. Kwa madai Chai ya ' throw
, tunaweza kuthibitisha kwa urahisi kuwa vitendaji vyetu hutupa vighairi vinavyotarajiwa inapohitajika. Kwa kujumuisha majaribio haya katika mkakati wetu wa majaribio, tunaweza kuimarisha uthabiti wa programu zetu na kutoa matumizi bora ya mtumiaji.
Katika makala ya tatu ya mfululizo wa "Node.js, Mocha, na Chai ", tutachunguza jinsi ya kupima kazi na mbinu kwa kutumia Chai. Chai ni maktaba yenye nguvu ya uthibitisho ya kupima thamani na matokeo katika JavaScript msimbo.
Kupima mbinu za kitu na tabia zao
Ili kuthibitisha mbinu za kitu, tunaweza kutumia madai yanayotolewa na mifumo ya majaribio kama vile Mocha na Chai. Madai haya yanaturuhusu kufanya madai kuhusu sifa na tabia za vitu.
Hebu tuchunguze mfano ambapo tuna kitu kinachoitwa calculator
na mbinu za kuongeza, kutoa, kuzidisha, na kugawanya. Tunataka kuhakikisha kuwa njia hizi zinarejesha matokeo sahihi. Tunaweza kuandika kesi za majaribio kwa kutumia Chai madai ya kuthibitisha tabia ya mbinu hizi.
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);
});
});
Katika mfano hapo juu, tunatumia Chai madai expect
ya kuthibitisha kuwa mbinu za calculator
kitu hurejesha matokeo yanayotarajiwa. Kila kesi ya jaribio inaangazia mbinu mahususi na hukagua ikiwa inaleta matokeo sahihi kwa ingizo fulani.
Kwa kuendesha kesi hizi za majaribio, tunaweza kuhakikisha kuwa mbinu za calculator
kifaa hufanya kazi inavyotarajiwa na kutoa matokeo sahihi.
Kando na kuangalia thamani za urejeshaji wa mbinu, tunaweza pia kutumia madai ili kuthibitisha sifa na tabia nyingine za vitu. Chai hutoa madai mbalimbali ambayo huturuhusu kutoa aina mbalimbali za madai juu ya vitu, kama vile kuangalia thamani za mali, kuthibitisha ombi la mbinu, na zaidi.
Kwa kupima kwa kina mbinu za kitu, tunaweza kuhakikisha usahihi na uaminifu wao, ambayo inachangia ubora wa jumla wa codebase yetu.