চায়ের সাথে ফাংশন এবং পদ্ধতি পরীক্ষা করা

 সঠিক ব্যতিক্রম নিক্ষেপ করার জন্য ফাংশন টেস্টিং

ব্যতিক্রমের জন্য পরীক্ষা করার জন্য, আমরা throwChai দ্বারা প্রদত্ত দাবী ব্যবহার করতে পারি। এই দাবীটি আমাদেরকে ব্যতিক্রমের ধরণ নির্দিষ্ট করতে দেয় যা নিক্ষেপ করা উচিত এবং যেকোন অতিরিক্ত বিবরণ আমরা যাচাই করতে চাই। আমাদের পরীক্ষার ক্ষেত্রে এই দাবিটি অন্তর্ভুক্ত করে, আমরা নিশ্চিত করতে পারি যে আমাদের ফাংশনগুলি প্রত্যাশিতভাবে আচরণ করে এবং ত্রুটির অবস্থা যথাযথভাবে পরিচালনা করে।

আসুন একটি উদাহরণ বিবেচনা করি যেখানে আমাদের একটি ফাংশন রয়েছে যা দুটি সংখ্যাকে ভাগ করে। আমরা নিশ্চিত করতে চাই যে শূন্য দ্বারা ভাগ করার সময় ফাংশনটি একটি ব্যতিক্রম ছুঁড়েছে। শূন্য দ্বারা ভাগ করার সময় throwফাংশনটি সঠিকভাবে একটি নিক্ষেপ করে কিনা তা পরীক্ষা করার জন্য আমরা Chai-এর দাবী ব্যবহার করে একটি টেস্ট কেস লিখতে পারি ।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তা যাচাই করতে দাবীটি ব্যবহার করি। দাবীটি একটি ফাংশনে মোড়ানো হয় যাতে এটি ব্যতিক্রমটি ধরতে পারে এবং প্রয়োজনীয় পরীক্ষাগুলি সম্পাদন করতে পারে।divideDivideByZeroError

সঠিক ব্যতিক্রম নিক্ষেপের জন্য পরীক্ষাগুলি অন্তর্ভুক্ত করে, আমরা নিশ্চিত করতে পারি যে আমাদের ফাংশনগুলি ত্রুটির শর্তগুলি যথাযথভাবে পরিচালনা করে এবং অপ্রত্যাশিত পরিস্থিতি ঘটলে অর্থপূর্ণ প্রতিক্রিয়া প্রদান করে। এটি আমাদের কোডের সামগ্রিক গুণমান এবং নির্ভরযোগ্যতা উন্নত করতে সাহায্য করে।

উপসংহারে, টেস্টিং ফাংশন যা ব্যতিক্রমগুলি ফেলে দেয় সফ্টওয়্যার পরীক্ষার একটি গুরুত্বপূর্ণ দিক। Chai এর throwদাবির সাথে, আমরা সহজেই যাচাই করতে পারি যে আমাদের ফাংশনগুলি যখন প্রয়োজন হয় তখন প্রত্যাশিত ব্যতিক্রমগুলি ফেলে দেয়। এই পরীক্ষাগুলিকে আমাদের পরীক্ষার কৌশলে অন্তর্ভুক্ত করে, আমরা আমাদের অ্যাপ্লিকেশনগুলির দৃঢ়তা বাড়াতে পারি এবং আরও ভাল ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে পারি।

"Node.js, Mocha, এবং Chai" সিরিজের তৃতীয় নিবন্ধে, আমরা কীভাবে Chai ব্যবহার করে ফাংশন এবং পদ্ধতিগুলি পরীক্ষা করতে হয় তা অন্বেষণ করব। 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);
  });
});

উপরের উদাহরণে, expectবস্তুর পদ্ধতিগুলি calculatorপ্রত্যাশিত ফলাফল প্রদান করে তা যাচাই করতে আমরা Chai-এর দাবী ব্যবহার করি। প্রতিটি পরীক্ষার ক্ষেত্রে একটি নির্দিষ্ট পদ্ধতিতে ফোকাস করে এবং এটি একটি প্রদত্ত ইনপুটের জন্য সঠিক আউটপুট প্রদান করে কিনা তা পরীক্ষা করে।

এই পরীক্ষার ক্ষেত্রে চালানোর মাধ্যমে, আমরা নিশ্চিত করতে পারি যে বস্তুর পদ্ধতিগুলি calculatorপ্রত্যাশিত হিসাবে আচরণ করে এবং সঠিক ফলাফল প্রদান করে।

পদ্ধতির রিটার্ন মান পরীক্ষা করার পাশাপাশি, আমরা বস্তুর অন্যান্য বৈশিষ্ট্য এবং আচরণ যাচাই করার জন্য দাবী ব্যবহার করতে পারি। Chai বিস্তৃত দাবী প্রদান করে যা আমাদের বস্তুর উপর বিভিন্ন ধরণের দাবী করার অনুমতি দেয়, যেমন সম্পত্তির মান পরীক্ষা করা, পদ্ধতির আহ্বান যাচাই করা এবং আরও অনেক কিছু।

একটি বস্তুর পদ্ধতি পুঙ্খানুপুঙ্খভাবে পরীক্ষা করে, আমরা তাদের সঠিকতা এবং নির্ভরযোগ্যতা নিশ্চিত করতে পারি, যা আমাদের কোডবেসের সামগ্রিক গুণমানে অবদান রাখে।