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