Nested describe এবং context ব্লক এর ব্যবহার

RSpec Syntax (RSpec সিনট্যাক্স) - আরএসপেক (RSpec) - Computer Programming

310

RSpec-এ describe এবং context ব্লক ব্যবহার করা হয় কোডের বিভিন্ন ইউনিট বা আচরণ পরীক্ষা করার জন্য। যখন আপনি কোডের ভিন্ন ভিন্ন অংশের জন্য আলাদা আলাদা টেস্ট লিখেন, তখন describe এবং context ব্লকগুলোকে নেস্ট (অর্থাৎ, একটির ভেতরে আরেকটি) করে ব্যবহার করতে পারেন। এর মাধ্যমে টেস্টের কাঠামো আরও স্পষ্ট, সংগঠিত এবং পাঠযোগ্য হয়।


১. describe ব্লক

describe ব্লক সাধারণত একটি কোড ইউনিট (যেমন, মেথড, ক্লাস বা ফিচার) পরীক্ষা করার জন্য ব্যবহৃত হয়। এটি কোডের প্রধান আচরণ বর্ণনা করতে ব্যবহৃত হয়।

উদাহরণ:

describe "Calculator" do
  it "যত বেশি সংখ্যার যোগফল সঠিকভাবে বের করে" do
    expect(2 + 3).to eq(5)
  end
end

২. context ব্লক

context ব্লক সাধারণত কোডের বিভিন্ন পরিস্থিতি বা শর্ত বর্ণনা করতে ব্যবহৃত হয়। এটি describe ব্লকের মতোই ব্যবহার করা হয়, তবে এর লক্ষ্য হলো পরীক্ষার শর্ত বা কন্ডিশন ব্যাখ্যা করা।

উদাহরণ:

context "যখন দুটি সংখ্যা ইতিবাচক হয়" do
  it "যোগফল সঠিকভাবে বের করবে" do
    expect(2 + 3).to eq(5)
  end
end

৩. Nested describe এবং context ব্লক

describe এবং context ব্লক একে অপরের মধ্যে নেস্ট (ভিতরে ভিতরে) করা যেতে পারে, যাতে কোডের বিভিন্ন স্তরের পরীক্ষা সহজে নির্ধারণ করা যায়। এটি পরীক্ষার পরিস্থিতি এবং আচরণগুলি আরও স্পষ্টভাবে বর্ণনা করতে সহায়ক।

উদাহরণ: Nested describe এবং context ব্লক

describe "Calculator" do
  describe "#add" do
    context "যখন দুটি সংখ্যা ইতিবাচক হয়" do
      it "যোগফল সঠিকভাবে বের করবে" do
        expect(2 + 3).to eq(5)
      end
    end

    context "যখন একটি সংখ্যা নেতিবাচক হয়" do
      it "যোগফল সঠিকভাবে বের করবে" do
        expect(2 + (-3)).to eq(-1)
      end
    end
  end

  describe "#subtract" do
    context "যখন দুটি সংখ্যা ইতিবাচক হয়" do
      it "বিয়োগফল সঠিকভাবে বের করবে" do
        expect(5 - 3).to eq(2)
      end
    end

    context "যখন একটি সংখ্যা নেতিবাচক হয়" do
      it "বিয়োগফল সঠিকভাবে বের করবে" do
        expect(2 - (-3)).to eq(5)
      end
    end
  end
end

এখানে, describe ব্লকটি প্রধান ফিচার বা মেথডকে চিহ্নিত করে, এবং context ব্লকটি আলাদা আলাদা পরিস্থিতি বা শর্ত বর্ণনা করছে, যেমন দুটি সংখ্যা ইতিবাচক বা নেতিবাচক হওয়ার পরিস্থিতি।

৪. যখন Nested describe এবং context ব্লক ব্যবহার করবেন

  • ভিন্ন ভিন্ন শর্ত পরীক্ষা করতে: যখন একটি ফিচারের বা মেথডের বিভিন্ন শর্তের অধীনে পরীক্ষা করা প্রয়োজন।
  • টেস্টের কাঠামো পরিষ্কার করতে: টেস্টের বিভিন্ন অংশে শর্ত বা পরিস্থিতি বিভাজন করতে সহায়ক।
  • কোডের পাঠযোগ্যতা বৃদ্ধি করতে: পরীক্ষার কন্ডিশন স্পষ্টভাবে চিহ্নিত করতে এটি সাহায্য করে।

সারাংশ

describe এবং context ব্লক RSpec-এ কোডের বিভিন্ন ইউনিট এবং শর্ত পরীক্ষা করতে ব্যবহৃত হয়। যখন আপনি কোডের বিভিন্ন শর্ত বা পরিস্থিতি যাচাই করতে চান, তখন nested describe এবং context ব্লক ব্যবহার করতে পারেন। এটি টেস্টের কাঠামো আরও সংগঠিত, পরিষ্কার এবং পাঠযোগ্য করে তোলে, যা ডেভেলপারদের জন্য কোডের কার্যকারিতা পরীক্ষা করা সহজ করে তোলে।

Content added By
Promotion

Are you sure to start over?

Loading...