← नवीनतम पेपर
💻 computer science

MuMuTestUp: Mutation-based Multi-Agent Test Case Update

MuMuTestUp एक म्यूटेशन-गाइडेड मल्टी-एजेंट फ्रेमवर्क है जो असर्शन पर्याप्तता (assertion adequacy), फाइन-ग्रेंड कवरेज और रिट्रीवल हैलुसिनेशन (retrieval hallucinations) को संबोधित करके विकसित होते सॉफ्टवेयर सिस्टम में स्वचालित टेस्ट केस अपडेट को बढ़ाता है, जिसे एक नए डेटासेट और अत्याधुनिक LLMs के साथ मूल्यांकनों के माध्यम से मान्य किया गया है।

मूल लेखक: Dawei Tian (Harbin Institute of Technology), Jiakun Liu (Harbin Institute of Technology), Yun Peng (The Chinese University of Hong Kong), Yichen Zhang (Harbin Institute of Technology), Jianlei Chi (Xi
प्रकाशित 2026-05-20
📖 6 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Dawei Tian (Harbin Institute of Technology), Jiakun Liu (Harbin Institute of Technology), Yun Peng (The Chinese University of Hong Kong), Yichen Zhang (Harbin Institute of Technology), Jianlei Chi (Xidian University), Jun Sun (Singapore Management University), Xiaohong Su (Harbin Institute of Technology)

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि आप एक व्यस्त रेस्टोरेंट चलाने वाले शेफ हैं। हर दिन, आप अपना मेनू (सॉफ्टवेयर कोड) अपडेट करते हैं। कभी आप एक नया व्यंजन जोड़ते हैं, तो कभी पुराने व्यंजन में सामग्री बदलते हैं।

अब, कल्पना कीजिए कि आपके पास स्वाद-परीक्षकों (टेस्ट केसेस) की एक टीम है जिनका काम यह सुनिश्चित करना है कि हर व्यंजन का स्वाद बिल्कुल वैसा ही हो जैसा कि रेसिपी में लिखा है।

समस्या यह है: जब आप रेसिपी बदलते हैं, तो पुराने टेस्ट अक्सर टूट जाते हैं। हो सकता है कि नया व्यंजन किसी अलग मसाले का उपयोग करता हो, इसलिए पुराना टेस्ट कहता है, "इसका स्वाद गलत है!" भले ही नई रेसिपी सही हो। या फिर ऐसा हो सकता है कि टेस्ट किसी ऐसे उपकरण का उपयोग करने की कोशिश करे जो अब किचन में मौजूद नहीं है, जिससे पूरा टेस्टिंग सेशन ही क्रैश हो जाए।

अतीत में, शेफ इन टूटे हुए टेस्ट को मैन्युअल रूप से ठीक करने की कोशिश करते थे, जो धीमा था और जिसमें गलतियाँ होने की संभावना अधिक थी। हाल ही में, लोगों ने टेस्ट को स्वचालित रूप से फिर से लिखने के लिए AI शेफ (लार्ज लैंग्वेज मॉडल्स) का उपयोग करना शुरू कर दिया है। लेकिन इन AI शेफों के सामने तीन बड़ी समस्याएँ थीं:

  1. वे बहुत आलसी थे: वे बस टेस्ट के उस हिस्से को हटा देते थे जहाँ से शिकायत आ रही थी, ताकि टेस्ट "पास" हो जाए, भले ही भोजन वास्तव में अच्छा हो या न हो। यह एक ऐसे स्वाद-परीक्षक की तरह था जो कहता, "मैं अब इसे चखूँगा नहीं, इसलिए यह ठीक ही होगा।"
  2. वे बारीकियों को भूल जाते थे: वे केवल यह देखते थे कि शेफ ने चूल्हा छुआ या नहीं (लाइन कवरेज), लेकिन यह नहीं देखते थे कि शेफ ने चूल्हे के बटन को "हाई" पर घुमाया या "लो" पर (ब्रांच कवरेज)। वे सूक्ष्म तर्क (लॉजिक) को समझने में चूक जाते थे।
  3. वे 'भूतों' से भ्रमित हो जाते थे: यदि AI शेफ किसी नकली सामग्री का नाम बना लेता था (हैलुसिनेशन/भ्रम), तो पुराने सर्च टूल्स उस चीज़ को किचन में नहीं ढूँढ पाते थे क्योंकि वे केवल सटीक मिलान (exact match) की तलाश करते थे।

मिलिए: MuMuTestUp (AI शेफों की सुपर-टीम) से

लेखकों ने MuMuTestUp नामक एक नया सिस्टम बनाया है। एक अकेला AI शेफ सब कुछ करने के बजाय, उन्होंने विशेषज्ञों की एजेंटों (रोबोट्स) की एक टीम बनाई है जो एक उच्च-स्तरीय किचन ब्रिगेड की तरह मिलकर काम करती है।

यहाँ बताया गया है कि उनकी टीम कैसे काम करती है, सरल उपमाओं का उपयोग करते हुए:

1. "म्यूटेशन डिटेक्टिव" (असर्शन एजेंट)

  • समस्या: पुराने AI शेफ कमजोर टेस्ट लिखते थे जो हर चीज़ को पास कर देते थे, भले ही खाना खराब क्यों न हो।
  • समाधान: यह एजेंट "सबोटेज" (तोड़फोड़) का खेल खेलता है। यह गुप्त रूप से रेसिपी में थोड़ा बदलाव करता है (एक "म्यूटेंट" या एक छोटा बग डालता है) यह देखने के लिए कि क्या स्वाद-परीक्षक उसे पकड़ पाता है।
  • उपमा: कल्पना कीजिए कि एजेंट गुप्त रूप से रेसिपी में नमक की जगह चीनी डाल देता है। यदि स्वाद-परीक्षक अंतर को नहीं देख पाता है, तो एजेंट AI शेफ से कहता है: "हे, तुम्हारा टेस्ट बहुत कमजोर है! तुम्हें इसे पकड़ने के लिए अधिक ध्यान से चखने की आवश्यकता है।" यह AI को अधिक मजबूत, अधिक आलोचनात्मक टेस्ट लिखने के लिए मजबूर करता है।

2. "कवरेज इंस्पेक्टर" (कवरेज एजेंट)

  • समस्या: पुराने तरीके केवल यह देखते थे कि शेफ ने चूल्हा छुआ या नहीं, यह नहीं कि उन्होंने सभी सेटिंग्स का उपयोग किया या नहीं।
  • समाधान: यह एजेंट किचन को देखता है और कहता है, "आपने 'हाई' हीट सेटिंग का उपयोग किया, लेकिन आपने कभी 'लो' हीट सेटिंग का उपयोग नहीं किया। जाओ और उसे भी टेस्ट करो!"
  • उपमा: केवल यह पूछने के बजाय कि "क्या आपने खाना पकाया?", यह कहता है, "क्या आपने स्टेक को वेल-डन और मीडियम-रेयर दोनों तरह से पकाया?" यह सुनिश्चित करता है कि टेस्ट कोड द्वारा लिए जा सकने वाले हर संभावित रास्ते को कवर करे, न कि केवल मुख्य रास्ते को।

3. "स्मार्ट लाइब्रेरियन" (सिमेंटिक रिट्रीवल एजेंट)

  • समस्या: यदि AI शेफ किसी नकली सामग्री का नाम बना लेता था, तो पुराने सर्च टूल्स कहते थे, "मैं वह सटीक शब्द नहीं ढूँढ पा रहा हूँ," और हार मान लेते थे।
  • समाधान: यह एजेंट सटीक स्पेलिंग के बजाय "अर्थ" (मतलब) का उपयोग करता है।
  • उपमा: यदि AI शेफ "एक लाल, तीखा पाउडर" मांगता है, तो लाइब्रेरियन केवल "पाप्रिका" शब्द को नहीं ढूँढता। वह उस विचार को समझता है और सही जार को ढूँढ निकालता है, भले ही AI शेफ ने नाम थोड़ा गलत ही क्यों न लिखा हो। यह AI को उसकी गलतियों को सुधारने में मदद करता है क्योंकि यह सही वास्तविक दुनिया के उपकरणों को ढूँढ लेता है।

नया "रेसिपी बुक" (Prbench)

यह साबित करने के लिए कि उनका सिस्टम काम करता है, लेखकों ने केवल पुराने, सरल उदाहरणों का उपयोग नहीं किया। उन्होंने Prbench नामक एक विशाल नया डेटासेट बनाया।

  • उपमा: शेफों का परीक्षण एकल, अलग-थलग रेसिपी परिवर्तनों पर करने के बजाय, उन्होंने उन्हें पूरे "मेनू ओवरहाल" (पुल रिक्वेस्ट) पर परखा, जहाँ दर्जनों रेसिपी एक साथ बदल जाती हैं। यह वास्तविक जीवन के बहुत करीब है, जहाँ एक रेस्टोरेंट एक बार में अपना पूरा समर मेनू अपडेट कर सकता है।

परिणाम

जब उन्होंने MuMuTestUp को सबसे अच्छे मौजूदा AI शेफों के खिलाफ परखा:

  • इसने अधिक टूटे हुए टेस्ट ठीक किए: इसने टेस्ट को बहुत अधिक बार फिर से चालू करने में सफलता प्राप्त की।
  • इसने अधिक गहराई से परीक्षण किया: इसने कोड के अधिक "रास्तों" (ब्रांच कवरेज) की जांच की और अधिक "बग्स" (म्यूटेशन स्कोर) को पकड़ा।
  • यह अधिक स्मार्ट था: इसने केवल कठिन हिस्सों को हटाया नहीं; बल्कि वास्तव में उन्हें ठीक किया।

संक्षेप में

MuMuTestUp एक स्मार्ट, टीम-आधारित AI सिस्टम है जो सॉफ्टवेयर टेस्ट को अपडेट करता है। केवल यह सुनिश्चित करने के बजाय कि टेस्ट चल रहे हैं, यह सुनिश्चित करता है कि टेस्ट गहन, आलोचनात्मक और सटीक हों। यह विशेषज्ञों की एक टीम का उपयोग करता है—एक चीजों को तोड़कर उनकी मजबूती परखने के लिए, एक हर कोण से जांचने के लिए, और एक सही जानकारी खोजने के लिए (भले ही AI भ्रमित हो)—यह सुनिश्चित करते हुए कि जब सॉफ्टवेयर बदलता है, तो सुरक्षा जाल हर बार गिरने से बचा ले।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →