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