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