Chaiతో విధులు మరియు పద్ధతులను పరీక్షించడం

 సరైన మినహాయింపులను విసిరే విధులను పరీక్షించడం

మినహాయింపుల కోసం పరీక్షించడానికి, మేము throwChai అందించిన ధృవీకరణను ఉపయోగించవచ్చు. ఈ నిరూపణ మాకు విధించాల్సిన మినహాయింపు రకాన్ని మరియు మేము ధృవీకరించాలనుకుంటున్న ఏవైనా అదనపు వివరాలను పేర్కొనడానికి అనుమతిస్తుంది. మా పరీక్ష సందర్భాలలో ఈ ప్రకటనను చేర్చడం ద్వారా, మా విధులు ఊహించిన విధంగా ప్రవర్తించేలా మరియు దోష పరిస్థితులను తగిన విధంగా నిర్వహించేలా మేము నిర్ధారించుకోవచ్చు.

మనకు రెండు సంఖ్యలను విభజించే ఫంక్షన్ ఉన్న ఉదాహరణను పరిశీలిద్దాం. సున్నాతో భాగించినప్పుడు ఫంక్షన్ మినహాయింపునిస్తుందని మేము నిర్ధారించుకోవాలనుకుంటున్నాము. సున్నాతో భాగించేటప్పుడు 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ధృవీకరించడానికి మేము నిశ్చయతను ఉపయోగిస్తాము. ప్రకటన ఒక ఫంక్షన్‌లో చుట్టబడి ఉంటుంది, తద్వారా ఇది మినహాయింపును గుర్తించి అవసరమైన తనిఖీలను చేయగలదు.divideDivideByZeroError

సరైన మినహాయింపు త్రోయింగ్ కోసం పరీక్షలను చేర్చడం ద్వారా, మా ఫంక్షన్‌లు లోపం పరిస్థితులను సముచితంగా నిర్వహిస్తాయని మరియు ఊహించని పరిస్థితులు సంభవించినప్పుడు అర్థవంతమైన అభిప్రాయాన్ని అందజేస్తాయని మేము నిర్ధారించుకోవచ్చు. ఇది మా కోడ్ యొక్క మొత్తం నాణ్యత మరియు విశ్వసనీయతను మెరుగుపరచడంలో సహాయపడుతుంది.

ముగింపులో, మినహాయింపులను విసిరే విధులను పరీక్షించడం సాఫ్ట్‌వేర్ పరీక్షలో ముఖ్యమైన అంశం. Chai యొక్క throwధృవీకరణతో, అవసరమైనప్పుడు మా ఫంక్షన్‌లు ఆశించిన మినహాయింపులను త్రోసివేస్తాయని మేము సులభంగా ధృవీకరించవచ్చు. ఈ పరీక్షలను మా పరీక్షా వ్యూహంలో చేర్చడం ద్వారా, మేము మా అప్లికేషన్‌ల పటిష్టతను మెరుగుపరచగలము మరియు మెరుగైన వినియోగదారు అనుభవాన్ని అందించగలము.

"Node.js, Mocha మరియు Chai" సిరీస్ యొక్క మూడవ కథనంలో, Chaiని ఉపయోగించి ఫంక్షన్‌లు మరియు పద్ధతులను ఎలా పరీక్షించాలో మేము విశ్లేషిస్తాము. Chai అనేది JavaScript కోడ్‌లో విలువలు మరియు ఫలితాలను పరీక్షించడానికి ఒక శక్తివంతమైన నిర్థారణ లైబ్రరీ.

 

ఆబ్జెక్ట్ పద్ధతులు మరియు వాటి ప్రవర్తనలను పరీక్షించడం

ఆబ్జెక్ట్ యొక్క పద్ధతులను ధృవీకరించడానికి, మేము మోచా మరియు చాయ్ వంటి ఫ్రేమ్‌వర్క్‌లను పరీక్షించడం ద్వారా అందించబడిన ధృవీకరణలను ఉపయోగించవచ్చు. ఈ వాదనలు వస్తువుల లక్షణాలు మరియు ప్రవర్తన గురించి నిరూపణలు చేయడానికి మాకు అనుమతిస్తాయి.

calculatorకూడిక, తీసివేత, గుణకారం మరియు భాగహారం కోసం పద్ధతులతో పిలువబడే వస్తువును కలిగి ఉన్న ఉదాహరణను పరిశీలిద్దాం . ఈ పద్ధతులు సరైన ఫలితాలను అందజేస్తాయని మేము నిర్ధారించుకోవాలనుకుంటున్నాము. ఈ పద్ధతుల ప్రవర్తనను ధృవీకరించడానికి మేము చై యొక్క ధృవీకరణలను ఉపయోగించి పరీక్ష కేసులను వ్రాయవచ్చు.

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);
  });
});

పై ఉదాహరణలో, expectఆబ్జెక్ట్ యొక్క పద్ధతులు calculatorఆశించిన ఫలితాలను ఇస్తాయని ధృవీకరించడానికి మేము చాయ్ యొక్క ధృవీకరణను ఉపయోగిస్తాము. ప్రతి పరీక్ష కేసు ఒక నిర్దిష్ట పద్ధతిపై దృష్టి పెడుతుంది మరియు ఇచ్చిన ఇన్‌పుట్ కోసం సరైన అవుట్‌పుట్‌ను తిరిగి ఇస్తుందో లేదో తనిఖీ చేస్తుంది.

ఈ పరీక్ష కేసులను అమలు చేయడం ద్వారా, ఆబ్జెక్ట్ యొక్క పద్ధతులు ఆశించిన విధంగా ప్రవర్తించేలా మరియు ఖచ్చితమైన ఫలితాలను అందించగలవని మేము నిర్ధారించుకోవచ్చు calculator.

పద్ధతుల యొక్క రిటర్న్ విలువలను తనిఖీ చేయడంతో పాటు, ఇతర లక్షణాలను మరియు వస్తువుల ప్రవర్తనను ధృవీకరించడానికి మేము ధృవీకరణలను కూడా ఉపయోగించవచ్చు. ప్రాపర్టీ విలువలను తనిఖీ చేయడం, పద్దతి ఆహ్వానాలను ధృవీకరించడం మరియు మరిన్ని వంటి వస్తువులపై వివిధ రకాల నిరూపణలను చేయడానికి మమ్మల్ని అనుమతించే విస్తృత శ్రేణి వాదనలను Chai అందిస్తుంది.

ఒక వస్తువు యొక్క పద్ధతులను క్షుణ్ణంగా పరీక్షించడం ద్వారా, మేము వాటి ఖచ్చితత్వం మరియు విశ్వసనీయతను నిర్ధారించగలము, ఇది మా కోడ్‌బేస్ యొక్క మొత్తం నాణ్యతకు దోహదం చేస్తుంది.