एजेंट

टेस्ट जो वास्तव में चलते हैं

इसे अपने कोड की तरफ निर्देशित करें। यह परीक्षण लिखता है, उन्हें Node के साथ आने वाले टेस्ट रनर के साथ चलाता है, और आपको बताता है कि क्या टूटा है — किसी विफलता को पास दिखाने के लिए आपके कोड को संपादित किए बिना।

कुछ टेस्ट लिखेंआज़माने के लिए मुफ़्त। कुछ भी इंस्टॉल करने की ज़रूरत नहीं।

यह कैसे काम करता है

तीन चरण, और उनमें से कोई भी “कॉन्फ़िगर करना” नहीं है।

  1. 01

    इसे कोड दें

    एक छोटा चेकआउट मॉड्यूल पहले से खुला है, या अपना खुद का लाएं। एक भी लाइन लिखने से पहले यह समझता है कि कोड किस लिए है।

  2. 02

    यह लिखता है, चलाता है और विफलता को पढ़ता है

    न चलाया गया टेस्ट केवल एक अनुमान है कि कोड क्या करता है। हर बदलाव को निष्पादित किया जाता है, और आउटपुट के आधार पर ही यह आगे का निर्णय लेता है।

  3. 03

    यह बताता है कि दो में से कौन सी चीज़ गलत हुई

    या तो टेस्ट गलत परिणाम की उम्मीद कर रहा है, या कोड में कोई बग है। दोनों के समाधान विपरीत हैं, और बिना बताए अनुमान लगाना सबसे खराब चीज़ होगी जो यह कर सकता है।

यह क्या कर सकता है

  • यह आपके कोड को संपादित करके टेस्ट सूट को पास नहीं बनाएगा

    यह वह नियम है जिस पर पूरा एजेंट काम करता है। विफल टेस्ट विफल स्थिति, कोड के वर्तमान व्यवहार और इसके अपेक्षित व्यवहार के विवरण के साथ वापस आता है। सुधार का प्रस्ताव दिया जाता है; यह केवल आपके कहने पर लागू किया जाता है।

  • सबसे पहले सीमाएं

    ठीक थ्रेशोल्ड पर, उसके दोनों तरफ एक-एक, शून्य, खाली, एक आइटम, सबसे बड़ा वास्तविक मान। यही वह जगह है जहां व्यवहार बदलता है और इसलिए गलतियां पाई जाती हैं — सीमा के बीच का हिस्सा शायद ही कभी किसी को हैरान करता है।

  • कुछ भी इंस्टॉल करने की ज़रूरत नहीं

    Node 22 के साथ टेस्ट रनर और असर्शन मॉड्यूल आता है; Python के साथ unittest आता है। सामान्य मामलों में किसी नेटवर्क या पैकेज की आवश्यकता नहीं होती, जो बार-बार प्रयास करने वाले एजेंट के लिए महत्वपूर्ण है।

इसे कैसे सेटअप किया गया है

यह कैसे काम करता है, ताकि साइन इन करने से पहले आपको पता हो कि आपको क्या मिल रहा है।

एनवायरनमेंट
Node 22 और Python 3 के साथ एक Linux कंटेनर। टेस्ट वहां चलते हैं, और आउटपुट फ़ाइल के नीचे टर्मिनल पेन में दिखाई देता है।
टूल
फ़ाइलें पढ़ने, लिखने और संपादित करने, glob, grep, और सुइट चलाने के लिए एक शेल।
मॉडल
कोई भी चैट मॉडल। यह एक लूप चलाता है — लिखें, चलाएं, पढ़ें, निर्णय लें — इसलिए यह तेजी से लिखने वाले मॉडल की तुलना में आउटपुट को ध्यान से पढ़ने वाले मॉडल को प्राथमिकता देता है।
शुरुआती फ़ाइलें
दो वास्तविक बग वाला एक छोटा चेकआउट मॉड्यूल, दोनों सीमा-संबंधित हैं, ताकि पहला रन सीधे पास होने के बजाय उस मोड़ तक पहुंचे जिसके लिए एजेंट बनाया गया है।
क्या सहेजा जाता है
टेस्ट एक tests डायरेक्टरी में लिखे जाते हैं और वहीं रहते हैं। फ़ाइल पर दिए गए Run बटन से उनमें से किसी को भी फिर से खुद चलाएं।

लोग इससे जो पूछते हैं

  • cart.js के लिए टेस्ट लिखें, उन्हें चलाएं और बताएं कि आपको क्या मिला।
  • फ़्री-शिपिंग नियम को ठीक थ्रेशोल्ड पर, और उसके दोनों तरफ़ टेस्ट करें।
  • इस फ़ाइल में किस हिस्से का टेस्ट नहीं हुआ है?
  • ये टेस्ट पास हो रहे हैं लेकिन मुझे इन पर भरोसा नहीं है — ये किस चीज़ की जाँच नहीं कर रहे हैं?

यह क्या नहीं करेगा

इनमें से हर एक ऐसी वास्तविक बाधा है जिसका हमने सामना किया है, कोई योजना की सूची वाली चीज नहीं।

  • एक ही विफलता लगातार दो बार मिलने पर यह रुक जाता है और आपको बताता है कि क्या अटका हुआ है। बिना बदले त्रुटि पर तीसरा प्रयास एक लूप है, प्रगति नहीं।
  • यह विफलता से बचने के लिए असर्शन को कमजोर नहीं करेगा। सटीक मान को अनुमानित मान में ढीला करना किसी पाए गए बग को छिपे हुए बग में बदल देता है।
  • यह केवल उस चीज़ का टेस्ट करता है जो आप इसे देते हैं। यह आपके CI, आपके डेटाबेस या कहीं और चल रही सेवा तक नहीं पहुँच सकता।

कौन सा मॉडल इसे सबसे बेहतर करता है

जल्द आ रहा है

हम इस एजेंट के लिए प्रति-मॉडल परिणाम एकत्र कर रहे हैं — एक रन आपके हस्तक्षेप के बिना कितनी बार काम पूरा करता है, इसकी लागत क्या है, और कितना समय लगता है। पर्याप्त रन होने पर आंकड़े यहां दिखेंगे, और तीनों आंकड़े एक साथ प्रकाशित किए जाएंगे: जो मॉडल हार मानकर जल्दी काम खत्म करता है उसकी पूर्णता दर धीमी होती है, और जो लगातार कोशिश करके सब कुछ पूरा करता है वह महंगा होता है।

पूरा होने की दर

ऐसे रन जिन्होंने आपके बिना हस्तक्षेप किए काम पूरा कर दिया।

मीडियन लागत

एक सामान्य रन की लागत क्या है, क्रेडिट में।

मीडियन समय

कुल समय, पहले संदेश से लेकर उत्तर तक।

टेस्ट जो वास्तव में चलते हैं

यह पहले से ही सेट है। इसे खोलें और इससे कुछ पूछें।

कुछ टेस्ट लिखें

सभी एजेंट देखें