আমি এলোমেলো পরীক্ষার পক্ষে, এবং আমি সেগুলি লিখি। তবে, কোনও নির্দিষ্ট বিল্ড এনভায়রনমেন্টে সেগুলি উপযুক্ত কিনা এবং কোন পরীক্ষার স্যুটগুলিতে তাদের অন্তর্ভুক্ত করা উচিত তা আরও সংখ্যক প্রশ্নযুক্ত প্রশ্ন।
স্থানীয়ভাবে চালান (যেমন, আপনার দেব বাক্সে রাতারাতি) এলোমেলোভাবে পরীক্ষাগুলিতে বাগগুলি সুস্পষ্ট এবং অস্পষ্ট উভয়ই খুঁজে পেয়েছে। অস্পষ্ট ব্যক্তিরা যথেষ্ট পরিমাণে তর্কযুক্ত যে আমি মনে করি এলোমেলোভাবে পরীক্ষা করা কেবলমাত্র তাদের বাস্তবসম্মত বাস্তববাদী। একটি পরীক্ষা হিসাবে, আমি এলোমেলোভাবে পরীক্ষার মাধ্যমে একটি হার্ড-টু-ফাইন্ড বাগ খুঁজে পেয়েছি এবং এটি অর্ধ ডজন ক্র্যাক বিকাশকারীদের ফাংশনটি (কোডের প্রায় এক ডজন লাইন) পর্যালোচনা করেছে where কেউ এটি সনাক্ত করতে সক্ষম হয় নি।
এলোমেলোভাবে ডেটার বিরুদ্ধে আপনার অনেক যুক্তি "পরীক্ষাটি পুনরায় উত্পাদনযোগ্য নয়" এর স্বাদ " যাইহোক, একটি ভাল লিখিত র্যান্ডমাইজড পরীক্ষা এলোমেলো বীজ শুরু করতে ব্যবহৃত বীজ ক্যাপচার করবে এবং ব্যর্থতায় এটিকে আউটপুট দেবে। আপনাকে হাতে দিয়ে পরীক্ষার পুনরাবৃত্তি করার অনুমতি দেওয়ার পাশাপাশি এটি আপনাকে তুচ্ছভাবে নতুন পরীক্ষা তৈরি করতে দেয় যা সেই পরীক্ষার জন্য বীজকে হার্ডকোডিং করে নির্দিষ্ট সমস্যাটি পরীক্ষা করে। অবশ্যই, হ্যান্ড-কোডটি সেই ক্ষেত্রে আচ্ছন্ন একটি সুস্পষ্ট পরীক্ষা হ্যান্ড-কোড করা খুব ভাল, তবে অলসতার গুণাবলী রয়েছে এবং এটি আপনাকে ব্যর্থ বীজ থেকে মূলত নতুন পরীক্ষার কেস স্বয়ংক্রিয়ভাবে তৈরি করতে দেয়।
আপনি যে বক্তব্যটি নিয়ে বিতর্ক করতে পারবেন না তা হ'ল এটি বিল্ড সিস্টেমগুলিকে ভেঙে দেয়। বেশিরভাগ বিল্ড এবং অবিচ্ছিন্ন একীকরণ পরীক্ষাগুলি প্রতিবার একই পরীক্ষা করার আশা করে। সুতরাং একটি পরীক্ষা যা এলোমেলোভাবে ব্যর্থ হয় বিশৃঙ্খলা সৃষ্টি করে, এলোমেলোভাবে ব্যর্থ হয় এবং ক্ষতিকারক নয় এমন পরিবর্তনগুলিতে আঙ্গুলগুলি দেখায়।
তারপরে একটি সমাধান হ'ল বিল্ড এবং সিআই পরীক্ষার অংশ হিসাবে আপনার এলোমেলোভাবে পরীক্ষাগুলি চালানো , তবে এটি একটি নির্দিষ্ট সংখ্যার পুনরাবৃত্তির জন্য একটি নির্দিষ্ট বীজ দিয়ে চালানো । সুতরাং পরীক্ষা সর্বদা একই কাজ করে তবে এখনও ইনপুট স্পেসের একগুচ্ছ অন্বেষণ করে (যদি আপনি এটি একাধিক পুনরাবৃত্তির জন্য চালনা করেন)।
স্থানীয়ভাবে, উদাহরণস্বরূপ, সম্পর্কিত শ্রেণিটি পরিবর্তন করার সময়, আপনি এটি আরও পুনরাবৃত্তির জন্য বা অন্যান্য বীজের সাথে চালাতে পারেন are যদি এলোমেলোভাবে টেস্টিং আরও জনপ্রিয় হয়ে ওঠে, আপনি এমন একটি নির্দিষ্ট স্যুটগুলির কল্পনাও করতে পারেন যা এলোমেলো হিসাবে পরিচিত, যা বিভিন্ন বীজ দিয়ে চালানো যেতে পারে (তাই সময়ের সাথে সাথে বাড়তি কভারেজ সহ) এবং যেখানে ব্যর্থতা একই জিনিসটিকে বোঝায় না নির্জনবাদী সিআই সিস্টেম হিসাবে (যেমন, রান পরিবর্তনের সাথে 1: 1 এর সাথে সম্পর্কিত নয় এবং সুতরাং জিনিসগুলি ব্যর্থ হলে আপনি কোনও নির্দিষ্ট পরিবর্তনের দিকে আঙুল তুলবেন না)।
এলোমেলোভাবে পরীক্ষাগুলির জন্য অনেক কিছু বলা যায়, বিশেষত ভাল লেখা রয়েছে, তাই এগুলি বরখাস্ত করার জন্য খুব তাড়াতাড়ি করবেন না!