আমার এই আলাপটির ব্যাখ্যাটি হ'ল:
- পরীক্ষার উপাদান, ক্লাস নয়।
- তাদের ইন্টারফেস পোর্টগুলির মাধ্যমে পরীক্ষার উপাদানগুলি।
এটি আলোচনায় বর্ণিত হয়নি, তবে আমি মনে করি পরামর্শের জন্য অনুমান করা প্রসঙ্গটি হ'ল:
- আপনি কোনও ইউটিলিটি লাইব্রেরি বা কাঠামো ব্যবহারকারীর জন্য একটি সিস্টেম বিকাশ করছেন না,
- পরীক্ষার লক্ষ্য হ'ল প্রতিযোগিতামূলক বাজেটের মধ্যে যথাসম্ভব সাফল্য সরবরাহ করা।
- উপাদানগুলি একটি একক, পরিপক্ক, সম্ভবত স্ট্যাটিকালি টাইপ করা ভাষায় সি # / জাভার মতো লেখা থাকে।
- একটি উপাদান 10000-50000 লাইনের ক্রম; একটি ম্যাভেন বা ভিএস প্রকল্প, ওএসজিআই প্লাগইন ইত্যাদি
- উপাদানগুলি একক বিকাশকারী, বা ঘনিষ্ঠভাবে সংহত দল দ্বারা লিখিত হয়।
- ষড়ভুজীয় আর্কিটেকচারের মতো কোনও কিছুর পরিভাষা এবং পদ্ধতির অনুসরণ করছেন
- একটি উপাদান পোর্ট হল যেখানে আপনি স্থানীয় ভাষা এবং তার টাইপ সিস্টেমটি পিছনে রেখে HTTP / এসকিউএল / এক্সএমএল / বাইটস / এ স্যুইচ করছেন ...
- প্রতিটি পোর্ট মোড়ানোর জন্য টাইপ করা ইন্টারফেস রয়েছে জাভা / সি # অর্থে, যা প্রযুক্তিতে পরিবর্তন করতে বাস্তবায়নগুলি স্যুইচ করে নিতে পারে।
সুতরাং কোনও উপাদানটির পরীক্ষা করা হ'ল বৃহত্তম সম্ভাব্য সুযোগ যেখানে কোনও কিছুকে এখনও যুক্তিসঙ্গতভাবে ইউনিট টেস্টিং বলা যেতে পারে। কিছু লোক, বিশেষত শিক্ষাবিদরা এই শব্দটি কীভাবে ব্যবহার করেন তার থেকে এটি আলাদা। এটি আদর্শ ইউনিট পরীক্ষা সরঞ্জাম টিউটোরিয়ালের উদাহরণগুলির মতো কিছুই নয়। এটি হার্ডওয়্যার পরীক্ষায় এর উত্সটির সাথে মেলে; বোর্ড এবং মডিউলগুলি ইউনিট পরীক্ষিত, তার ও স্ক্রু নয়। বা কমপক্ষে আপনি স্ক্রু পরীক্ষা করার জন্য মক বোয়িং তৈরি করবেন না ...
এটি থেকে এক্সট্রোপোলেটিং এবং নিজের কিছু চিন্তাভাবনা ছুঁড়ে ফেলা,
- প্রতিটি ইন্টারফেস হয় একটি ইনপুট, একটি আউটপুট, বা একটি সহযোগী (একটি ডাটাবেসের মত) হতে চলেছে।
- আপনি ইনপুট ইন্টারফেস পরীক্ষা ; পদ্ধতিগুলি কল করুন, রিটার্নের মানগুলি লিখুন।
- আপনি আউটপুট ইন্টারফেস উপহাস ; প্রত্যাশিত পদ্ধতিগুলি প্রদত্ত পরীক্ষার ক্ষেত্রে ডাকা হবে কিনা তা যাচাই করুন।
- আপনি সহযোগীদের জাল ; একটি সহজ কিন্তু কাজের বাস্তবায়ন সরবরাহ
আপনি যদি এটি সঠিকভাবে এবং পরিষ্কারভাবে করেন তবে আপনার সবেমাত্র একটি উপহাসের সরঞ্জাম প্রয়োজন; এটি প্রতি সিস্টেমের জন্য কয়েকবার ব্যবহৃত হয়।
একটি ডাটাবেস সাধারণত একটি সহযোগী হয়, তাই এটি উপহাসের পরিবর্তে নকল হয়ে যায়। এটি হাত দ্বারা প্রয়োগ করা বেদনাদায়ক হবে; ভাগ্যক্রমে এই জাতীয় জিনিস ইতিমধ্যে বিদ্যমান ।
প্রাথমিক পরীক্ষার প্যাটার্নটি হ'ল কিছু ক্রিয়াকলাপ (উদাহরণস্বরূপ একটি দস্তাবেজের সংরক্ষণ এবং পুনরায় লোড); নিশ্চিত এটি কাজ করে। এটি অন্য যে কোনও পরীক্ষার দৃশ্যের মতো; কোন (কার্যকরী) বাস্তবায়ন পরিবর্তনের ফলে এ জাতীয় পরীক্ষা ব্যর্থ হওয়ার সম্ভাবনা রয়েছে।
ব্যতিক্রম হ'ল ডাটাবেস রেকর্ডগুলি লিখিত হয় তবে পরীক্ষার অধীনে কখনও এটি পড়ে না; যেমন নিরীক্ষণ লগ বা অনুরূপ। এগুলি আউটপুট এবং তাই উপহাস করা উচিত। পরীক্ষার প্যাটার্নটি ক্রিয়াকলাপগুলির কয়েকটি ক্রম করে; নিরীক্ষণ ইন্টারফেসটি নির্দিষ্ট হিসাবে পদ্ধতি এবং আর্গুমেন্ট সহ ডাকা হয়েছিল তা নিশ্চিত করুন।
মনে রাখবেন যে এখানে, আপনি মকিতোর মতো টাইপ-নিরাপদ উপহাসের সরঞ্জাম ব্যবহার করছেন এমন একটি সরবরাহ , ইন্টারফেস পদ্ধতির নাম পরিবর্তন করা কোনও পরীক্ষার ব্যর্থতার কারণ হতে পারে না। আপনি যদি লোড হওয়া পরীক্ষাগুলি সহ কোনও আইডিই ব্যবহার করেন, তবে এটি পদ্ধতিটির পুনর্নবীকরণের সাথে সাথে রিফ্যাক্টর হবে। যদি আপনি না করেন, পরীক্ষাটি সংকলন করবে না।