సరైన మినహాయింపులను విసిరే విధులను పరీక్షించడం
throw
మినహాయింపుల కోసం పరీక్షించడానికి, మేము అందించిన నిశ్చయతను ఉపయోగించవచ్చు Chai. ఈ నిరూపణ మాకు విధించాల్సిన మినహాయింపు రకాన్ని మరియు మేము ధృవీకరించాలనుకుంటున్న ఏవైనా అదనపు వివరాలను పేర్కొనడానికి అనుమతిస్తుంది. మా పరీక్ష సందర్భాలలో ఈ ప్రకటనను చేర్చడం ద్వారా, మా విధులు ఊహించిన విధంగా ప్రవర్తించేలా మరియు దోష పరిస్థితులను తగిన విధంగా నిర్వహించేలా మేము నిర్ధారించుకోవచ్చు.
మనకు రెండు సంఖ్యలను విభజించే ఫంక్షన్ ఉన్న ఉదాహరణను పరిశీలిద్దాం. సున్నాతో భాగించినప్పుడు ఫంక్షన్ మినహాయింపునిస్తుందని మేము నిర్ధారించుకోవాలనుకుంటున్నాము. సున్నాతో భాగించేటప్పుడు ఫంక్షన్ సరిగ్గా ఎను విసురుతోందో లేదో తనిఖీ చేయడానికి Chai 's అసెర్షన్ని ఉపయోగించి పరీక్ష కేసును వ్రాయవచ్చు. throw
DivideByZeroError
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);
});
});
పై ఉదాహరణలో, సున్నాతో భాగించేటప్పుడు ఫంక్షన్ a ని విసురుతుందని to.throw
ధృవీకరించడానికి మేము నిశ్చయతను ఉపయోగిస్తాము. ప్రకటన ఒక ఫంక్షన్లో చుట్టబడి ఉంటుంది, తద్వారా ఇది మినహాయింపును గుర్తించి అవసరమైన తనిఖీలను చేయగలదు. divide
DivideByZeroError
సరైన మినహాయింపు త్రోయింగ్ కోసం పరీక్షలను చేర్చడం ద్వారా, మా ఫంక్షన్లు లోపం పరిస్థితులను సముచితంగా నిర్వహిస్తాయని మరియు ఊహించని పరిస్థితులు సంభవించినప్పుడు అర్థవంతమైన అభిప్రాయాన్ని అందజేస్తాయని మేము నిర్ధారించుకోవచ్చు. ఇది మా కోడ్ యొక్క మొత్తం నాణ్యత మరియు విశ్వసనీయతను మెరుగుపరచడంలో సహాయపడుతుంది.
ముగింపులో, మినహాయింపులను విసిరే విధులను పరీక్షించడం సాఫ్ట్వేర్ పరీక్షలో ముఖ్యమైన అంశం. Chai యొక్క ధృవీకరణతో throw
, అవసరమైనప్పుడు మా ఫంక్షన్లు ఆశించిన మినహాయింపులను త్రోసివేస్తాయని మేము సులభంగా ధృవీకరించవచ్చు. ఈ పరీక్షలను మా పరీక్షా వ్యూహంలో చేర్చడం ద్వారా, మేము మా అప్లికేషన్ల పటిష్టతను మెరుగుపరచగలము మరియు మెరుగైన వినియోగదారు అనుభవాన్ని అందించగలము.
Mocha "Node.js,, మరియు " సిరీస్ యొక్క మూడవ కథనంలో Chai, మేము ఉపయోగించి ఫంక్షన్లు మరియు పద్ధతులను ఎలా పరీక్షించాలో అన్వేషిస్తాము Chai. కోడ్లో Chai విలువలు మరియు ఫలితాలను పరీక్షించడం కోసం ఒక శక్తివంతమైన నిర్థారణ లైబ్రరీ. JavaScript
ఆబ్జెక్ట్ పద్ధతులు మరియు వాటి ప్రవర్తనలను పరీక్షించడం
ఆబ్జెక్ట్ యొక్క పద్ధతులను ధృవీకరించడానికి, Mocha మరియు వంటి ఫ్రేమ్వర్క్లను పరీక్షించడం ద్వారా అందించబడిన నిరూపణలను మేము ఉపయోగించవచ్చు Chai. ఈ వాదనలు వస్తువుల లక్షణాలు మరియు ప్రవర్తన గురించి నిరూపణలు చేయడానికి మాకు అనుమతిస్తాయి.
calculator
కూడిక, తీసివేత, గుణకారం మరియు భాగహారం కోసం పద్ధతులతో పిలువబడే వస్తువును కలిగి ఉన్న ఉదాహరణను పరిశీలిద్దాం. ఈ పద్ధతులు సరైన ఫలితాలను అందజేస్తాయని మేము నిర్ధారించుకోవాలనుకుంటున్నాము. Chai ఈ పద్ధతుల యొక్క ప్రవర్తనను ధృవీకరించడానికి మేము 'స్అసెర్షన్లను ఉపయోగించి పరీక్ష కేసులను వ్రాయవచ్చు .
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);
});
});
ఎగువ ఉదాహరణలో, ఆబ్జెక్ట్ యొక్క పద్ధతులు ఆశించిన ఫలితాలను ఇస్తాయని ధృవీకరించడానికి మేము Chai ' నిర్ధారణను ఉపయోగిస్తాము. ప్రతి పరీక్ష కేసు ఒక నిర్దిష్ట పద్ధతిపై దృష్టి పెడుతుంది మరియు ఇచ్చిన ఇన్పుట్ కోసం సరైన అవుట్పుట్ను తిరిగి ఇస్తుందో లేదో తనిఖీ చేస్తుంది. expect
calculator
ఈ పరీక్ష కేసులను అమలు చేయడం ద్వారా, ఆబ్జెక్ట్ యొక్క పద్ధతులు ఆశించిన విధంగా ప్రవర్తించేలా మరియు ఖచ్చితమైన ఫలితాలను అందించగలవని మేము నిర్ధారించుకోవచ్చు calculator
.
పద్ధతుల యొక్క రిటర్న్ విలువలను తనిఖీ చేయడంతో పాటు, ఇతర లక్షణాలను మరియు వస్తువుల ప్రవర్తనను ధృవీకరించడానికి మేము ధృవీకరణలను కూడా ఉపయోగించవచ్చు. Chai ప్రాపర్టీ విలువలను తనిఖీ చేయడం, పద్దతి ఆహ్వానాలను ధృవీకరించడం మరియు మరిన్ని వంటి వస్తువులపై వివిధ రకాల నిరూపణలను చేయడానికి మమ్మల్ని అనుమతించే విస్తృత శ్రేణి ప్రకటనలను అందిస్తుంది.
ఒక వస్తువు యొక్క పద్ధతులను క్షుణ్ణంగా పరీక్షించడం ద్వారా, మేము వాటి ఖచ్చితత్వం మరియు విశ్వసనీయతను నిర్ధారించగలము, ఇది మా కోడ్బేస్ యొక్క మొత్తం నాణ్యతకు దోహదం చేస్తుంది.