नया: TestSprite CLI अब लाइव है!

एपीआई टेस्टिंग जिसके लिए ब्राउज़र की ज़रूरत नहीं।

testsprite test create --type backend आपके लाइव API पर असली HTTP रिक्वेस्ट प्लान और रन करता है — ऑथ, डिपेंडेंट कॉल, एज केस — आपके टर्मिनल या CI से। न कोई Playwright, न कोई ब्राउज़र, न कोई हाथ से लिखा टेस्ट स्क्रिप्ट जिसे आपके एंडपॉइंट्स के साथ सिंक रखना पड़े।

आपके पास पहले से मौजूद API डॉक्स को पढ़ता है

OpenAPISwaggerPostmanया फ़्री-फ़ॉर्म डॉक्स
हम आपके बैकएंड को मॉक नहीं करते और उसे टेस्टेड नहीं मान लेते। testsprite आपके असली लाइव एनवायरनमेंट को असली HTTP रिक्वेस्ट भेजता है — वही एनवायरनमेंट जिसे आपके यूज़र्स इस्तेमाल करते हैं।

जो टूटा उसे तुरंत पकड़ें

किसी बैकएंड बदलाव के बाद testsprite test rerun <testId> --output json आपको असली एंडपॉइंट के खिलाफ़ एक पास/फेल देता है — न कि किसी ऐसे मॉक का स्नैपशॉट जो कभी बदला ही नहीं।

जो चाहिए उसे समझें

इसे अपने OpenAPI, Swagger, या Postman कलेक्शन — या फ़्री-फ़ॉर्म डॉक्स — पर पॉइंट करें, और यह आपके एंडपॉइंट्स को अपने आप एक टेस्ट प्लान में मैप कर देता है।

जो है उसे वेरिफाई करें

टेस्ट प्लान क्रमबद्ध एक्शन/असर्शन स्टेप्स को सपोर्ट करते हैं, इसलिए यह डिपेंडेंट कॉल को चेन कर सकता है — पहले लॉगिन करें, फिर ऑथेंटिकेटेड रिस्पॉन्स जाँचें — बिल्कुल वैसे जैसे कोई असली क्लाइंट करता है।

जो चाहिए वो सुझाएँ

हर फेलियर एक फेलियर बंडल है जिसमें रिक्वेस्ट, रिस्पॉन्स, एक रूट-कॉज़ परिकल्पना, और एक फिक्स सुझाव होता है — क्या टूटा यह जानने के लिए लॉग खंगालने की ज़रूरत नहीं।

$ testsprite test create --project prj_8f2a --type backend \
    --plan-from checkout-api-plan.json --run --wait --output json

  ✓ POST /cart/apply-promo              passed   340ms
  ✗ POST /orders                        failed   510ms
    → expected 201, got 500
    → rootCause: "promo code not revalidated server-side"

$ testsprite test failure get <testId> --out ./failures

डिपेंडेंसी-अवेयर, न कि सिर्फ़ एंडपॉइंट-दर-एंडपॉइंट

असली API फ़्लो एक रिक्वेस्ट नहीं होते — वे एक चेन होते हैं: ऑथेंटिकेट करें, फिर फ़ेच करें, फिर म्यूटेट करें। टेस्ट प्लान उस चेन को क्रमबद्ध स्टेप्स के रूप में मॉडल करते हैं, ताकि एक टेस्ट पिछले स्टेप के नतीजे पर निर्भर कर सके।

बैकएंड-फर्स्ट टीमों के लिए बनाया गया

कोई ब्राउज़र ओवरहेड नहीं

बैकएंड टेस्ट शुद्ध HTTP कॉल के रूप में चलते हैं — कोई ब्राउज़र बूट नहीं करना, कोई Playwright डिपेंडेंसी नहीं, तेज़ CI।

संरचित टेस्ट प्लान

testsprite test plan put आपके API टेस्ट प्लान को JSON के रूप में वर्ज़न करता है, जिसे उस कोड की तरह ही पुल रिक्वेस्ट में रिव्यू किया जा सकता है जिसे यह टेस्ट करता है।

मुफ़्त कम्युनिटी वर्ज़न

एक मुफ़्त कम्युनिटी वर्ज़न देता है, जिससे यह सबके लिए सुलभ बनता है।

बैच रन

testsprite test run --all --project <id> आपकी पूरी API सतह को एक ही कमांड में फिर से वेरिफाई करता है।

दुनिया भर के व्यवसायों द्वारा विश्वसनीय

"टेस्टस्प्राइट समृद्ध टेस्ट केस जनरेशन, स्पष्ट संरचना और पढ़ने में आसान कोड प्रदान करता है। यह नए टेस्ट केस उत्पन्न करके तेजी से विस्तार करने की क्षमता के साथ सरल ऑनलाइन डिबगिंग का भी समर्थन करता है।"

"टेस्टस्प्राइट का स्वचालन हमें बहुत सारे मैन्युअल काम को कम करने में मदद करता है। डेवलपर्स विकास प्रक्रिया में पहले ही बग्स को आसानी से पकड़ और हल कर सकते हैं।"

FAQ

क्या CLI को मेरे API स्पेक की ज़रूरत है, या यह खुद ही निकाल सकता है?

दोनों। इसे किसी OpenAPI, Swagger, या Postman फ़ाइल पर पॉइंट करें और यह एंडपॉइंट्स को सीधे मैप कर देता है; न होने पर भी, यह फ़्री-फ़ॉर्म डॉक्स या आपके मौजूदा कोड से प्लान बना सकता है।

--type backend असल में क्या चलाता है?

आपके लाइव API के खिलाफ़ असली HTTP रिक्वेस्ट, डिपेंडेंसी मैनेजमेंट के साथ — एक टेस्ट प्लान एक ऑथेंटिकेट स्टेप को फ़ेच स्टेप में और फिर म्यूटेट स्टेप में चेन कर सकता है, और हर स्टेप या तो एक एक्शन है या एक असर्शन।

क्या इसके लिए मुझे ब्राउज़र या Playwright चाहिए?

नहीं — बैकएंड टेस्ट शुद्ध HTTP कॉल हैं। --type frontend Playwright-आधारित ब्राउज़र पाथ है; --type backend इसे पूरी तरह छोड़ देता है।

जब कोई API टेस्ट फेल होता है तो क्या होता है?

आपको एक फेलियर बंडल मिलता है: रिक्वेस्ट, रिस्पॉन्स, एक रूट-कॉज़ परिकल्पना, और एक फिक्स सिफ़ारिश — इसे testsprite test failure get <testId> से पाएँ।

क्या मैं अपने API टेस्ट प्लान को अपने कोड के साथ वर्ज़न कर सकता हूँ?

हाँ — टेस्ट प्लान JSON होते हैं। testsprite test plan put किसी एक को अपडेट करता है, और चूँकि यह सिर्फ़ एक फ़ाइल है, यह पुल रिक्वेस्ट में किसी और डिफ़ की तरह ही रिव्यू होता है।

वो API टेस्ट करें जिसे आपके यूज़र्स असल में इस्तेमाल करते हैं।