درست مستثنیات کو پھینکنے کے لیے جانچ کے افعال
مستثنیات کی جانچ کرنے کے لیے، ہم throwChai کے فراہم کردہ دعوے کو استعمال کر سکتے ہیں۔ یہ دعویٰ ہمیں استثناء کی قسم کی وضاحت کرنے کی اجازت دیتا ہے جسے پھینکا جانا چاہئے اور کوئی بھی اضافی تفصیلات جس کی ہم توثیق کرنا چاہتے ہیں۔ اپنے ٹیسٹ کیسز میں اس دعوے کو شامل کرکے، ہم اس بات کو یقینی بنا سکتے ہیں کہ ہمارے فنکشنز توقع کے مطابق برتاؤ کریں اور خرابی کے حالات کو مناسب طریقے سے ہینڈل کریں۔
آئیے ایک مثال پر غور کریں جہاں ہمارے پاس ایک فنکشن ہے جو دو نمبروں کو تقسیم کرتا ہے۔ ہم اس بات کو یقینی بنانا چاہتے ہیں کہ صفر سے تقسیم کرتے وقت فنکشن ایک استثناء دیتا ہے۔ ہم Chai کے دعوے کا استعمال کرتے ہوئے ایک ٹیسٹ کیس لکھ سکتے ہیں تاکہ یہ چیک کیا جا سکے کہ آیا صفر سے تقسیم کرتے وقت 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);
});
});
مندرجہ بالا مثال میں، ہم to.throwاس بات کی تصدیق کے لیے دعویٰ استعمال کرتے ہیں کہ صفر سے تقسیم کرتے وقت divideفنکشن ایک پھینکتا ہے ۔ DivideByZeroErrorدعوی کو ایک فنکشن میں لپیٹ دیا جاتا ہے تاکہ یہ استثناء کو پکڑ سکے اور ضروری جانچ پڑتال کر سکے۔
درست استثنیٰ پھینکنے کے لیے ٹیسٹ شامل کرکے، ہم اس بات کو یقینی بنا سکتے ہیں کہ ہمارے فنکشنز خرابی کے حالات کو مناسب طریقے سے ہینڈل کرتے ہیں اور غیر متوقع حالات پیش آنے پر بامعنی رائے فراہم کرتے ہیں۔ اس سے ہمارے کوڈ کے مجموعی معیار اور وشوسنییتا کو بہتر بنانے میں مدد ملتی ہے۔
آخر میں، ٹیسٹنگ افعال جو مستثنیات کو پھینک دیتے ہیں سافٹ ویئر ٹیسٹنگ کا ایک اہم پہلو ہے۔ چائی کے throwدعوے کے ساتھ، ہم آسانی سے اس بات کی تصدیق کر سکتے ہیں کہ جب ضروری ہو تو ہمارے افعال متوقع مستثنیات کو پھینک دیتے ہیں۔ ان ٹیسٹوں کو اپنی جانچ کی حکمت عملی میں شامل کر کے، ہم اپنی ایپلی کیشنز کی مضبوطی کو بڑھا سکتے ہیں اور صارف کا بہتر تجربہ فراہم کر سکتے ہیں۔
"Node.js، Mocha، اور Chai" سیریز کے تیسرے مضمون میں، ہم دریافت کریں گے کہ Chai کا استعمال کرتے ہوئے افعال اور طریقوں کی جانچ کیسے کی جائے۔ Chai جاوا اسکرپٹ کوڈ میں اقدار اور نتائج کی جانچ کے لیے ایک طاقتور دعویٰ لائبریری ہے۔
آبجیکٹ کے طریقوں اور ان کے طرز عمل کی جانچ کرنا
کسی چیز کے طریقوں کی تصدیق کرنے کے لیے، ہم ٹیسٹنگ فریم ورک جیسے موچا اور چائی کے ذریعے فراہم کردہ دعوے استعمال کر سکتے ہیں۔ یہ دعوے ہمیں اشیاء کی خصوصیات اور رویے کے بارے میں دعوے کرنے کی اجازت دیتے ہیں۔
آئیے ایک مثال پر غور کریں جہاں ہمارے پاس ایک چیز ہے جسے 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 دعووں کی ایک وسیع رینج فراہم کرتا ہے جو ہمیں اشیاء پر مختلف قسم کے دعوے کرنے کی اجازت دیتا ہے، جیسے کہ جائیداد کی قدروں کی جانچ کرنا، طریقہ کی درخواستوں کی تصدیق کرنا، اور بہت کچھ۔
کسی چیز کے طریقوں کو اچھی طرح جانچ کر، ہم ان کی درستگی اور قابل اعتمادی کو یقینی بنا سکتے ہیں، جو ہمارے کوڈ بیس کے مجموعی معیار میں معاون ہے۔