সম্প্রতি Google-এর একটি পেপার দেখিয়েছে যে স্পেক-চালিত টেস্ট জেনারেশন তাদের কোডবেসের নমুনায় বাগ সনাক্তকরণ ৯.৮ শতাংশ পয়েন্ট বাড়িয়েছে। কিন্তু তাদের স্পেক কোড থেকে পড়া হয়, যা আমার কাছে গুরুত্বপূর্ণ অর্ধেকটি অমীমাংসিত রেখে দেয়। আমি মাস ধরে যুক্তি দিয়ে আসছি যে যে মডেল কোড লিখেছে সেই একই মডেলের লেখা টেস্ট স্যুট সত্যিই তার সাথে দ্বিমত পোষণ করতে পারে না, এবং আমার দাবি সমর্থনের জন্য আমি একটি নতুন ওপেন সোর্স Python লাইব্রেরি তৈরি করেছি।
সফটওয়্যার টেস্টিং বিশ বছর ধরে এক দিকে এগিয়ে চলেছে, এবং স্পেসিফিকেশন-চালিত উন্নয়ন (SDD) হল যেখানে এই আন্দোলন সম্প্রতি পৌঁছেছে। এই নিবন্ধটি আরও এক ধাপের পক্ষে যুক্তি দেয়: স্বাধীন SDD, বা ISDD। TDD বলেছিল টেস্টই স্পেসিফিকেশন। BDD ছিল তার উত্তর। SDD হল সংস্করণ যা এজেন্টদের সাথে এসেছে।
বর্তমানে, স্পেক-চালিত উন্নয়ন কাজকে ভাগ করে। এটি ভাগ করে না কার জ্ঞান আছে। একই স্পেসিফিকেশন পরিকল্পনাকারী, টেস্ট জেনারেটর এবং কোডিং এজেন্টের কাছে যায়। আমার যুক্তি হল সেই রেখা বরাবর কাটা: কোডিং এজেন্টকে সিদ্ধান্ত দিন এবং গ্রহণযোগ্যতার মানদণ্ড আটকে রাখুন, যাতে টেস্ট স্যুট কোডকে বলতে পারে যে এটি ভুল।
Google-এর একটি দল আটকে রাখার আগের ধাপটি পরিমাপ করেছে। "Grounding AI Agents in Contracts: An Empirical Evaluation of Spec-Driven Test Generation" আমার যুক্তির চেয়ে সংকীর্ণ কিছু করে। তারা প্রথমে এটিকে কোড সম্পর্কে যুক্তি করতে এবং এর চুক্তি লিখতে বলে। সেই নথিটি একটি জ্ঞানীয় ভারা হয়ে ওঠে এবং এটি থেকে টেস্ট তৈরি হয়। ফলাফল, Google-এর নিজস্ব কোডবেসের উৎপাদন বাগগুলিতে, দেখায় যে অর্ধেকেরও বেশি সময়, একটি উৎপন্ন টেস্ট স্যুট...
উৎস: Towards Data Science · সারাংশ: HeadlinesBriefing