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