
OpenAPI endpoints के लिए स्वचालित REST API फज़र और नकारात्मक परीक्षण उपकरण। बिना कोडिंग प्रयास के हजारों स्व-उपचार परीक्षण उत्पन्न, चलाता और रिपोर्ट करता है, जो सीमा और सुरक्षा परिदृश्यों को कवर करता है।
CATS दस्तावेज़ https://endava.github.io/cats/ पर उपलब्ध है
REST API फ़ज़र और नेगेटिव टेस्टिंग टूल। बिना किसी कोडिंग प्रयास के मिनटों में हज़ारों स्व-उपचारित API परीक्षण चलाएँ!
समय कम है? 1-मिनट की Quick Start Guide देखें!
एक सरल और न्यूनतम सिंटैक्स का उपयोग करके, सपाट सीखने की अवस्था के साथ, CATS (Contract API Testing and Security) आपको बिना किसी कोडिंग प्रयास के मिनटों में हज़ारों API परीक्षण उत्पन्न करने में सक्षम बनाता है। सभी परीक्षण पूर्व-निर्धारित 100+ Fuzzers के सेट के आधार पर स्वचालित रूप से उत्पन्न, चलाए और रिपोर्ट किए जाते हैं। Fuzzers सीमा परीक्षण और नेगेटिव परिदृश्यों की एक विस्तृत श्रृंखला को कवर करते हैं, पूरी तरह से यादृच्छिक बड़े Unicode मानों से लेकर अनुरोध डेटा प्रकारों और बाधाओं के आधार पर अच्छी तरह से तैयार, संदर्भ-निर्भर मानों तक। इससे भी अधिक, आप इस तथ्य का लाभ उठा सकते हैं कि CATS अनुरोध पेलोड को गतिशील रूप से उत्पन्न करता है और सरल एंड-टू-एंड कार्यात्मक परीक्षण लिख सकते हैं।
निष्पादन का पालन करने और टर्मिनल छोड़े बिना परिणामों का निरीक्षण करने के लिए सामान्य फ़ज़िंग कमांड पर --tui का उपयोग करें:
cats --contract openapi.yml --server http://localhost:8080 --tui
अवलोकन में Paths, Run configuration, Response time, HTTP Response Codes, Success/Warnings/Errors, और Fuzzers run दिखाए जाते हैं, जो CLI और HTML रिपोर्ट के समान शब्दावली का उपयोग करते हैं। fuzzer तालिका सभी उपलब्ध टर्मिनल पंक्तियों का उपयोग करती है; जब पूरी सूची फ़िट नहीं होती तो इसे ब्राउज़ करने के लिए j/k या Page Up/Page Down का उपयोग करें। Execution Details के लिए 2 दबाएँ, Execution summary और Quality gate result के लिए 3, Execution Details by Result Reason के लिए 4, Paths included के लिए 5, या Response Time के अनुसार क्रमबद्ध निष्पादित परीक्षणों के लिए 6 दबाएँ। Result Reason और Path पंक्तियाँ Enter के साथ उनके मेल खाते परीक्षण खोलती हैं।
परीक्षण चुनने के लिए तीर कुंजियों या j/k का उपयोग करें, और इसके अनुरोध, प्रतिक्रिया, परिणाम, ट्रेस, और रीप्ले कमांड को पूर्ण-स्क्रीन विस्तृत दृश्य में निरीक्षण करने के लिए Enter दबाएँ। परीक्षण सूची में परीक्षण ID, fuzzers, paths, scenarios, result reasons, methods, results, और response codes खोजने के लिए / दबाएँ। a, e, w, s, और i क्रमशः सभी, error, warning, successful, और skipped परिणामों को फ़िल्टर करते हैं। Esc पहले एक सक्रिय खोज को साफ़ करता है और अन्यथा पिछली स्क्रीन पर लौटता है; 1 अवलोकन खोलता है।
इंटरफ़ेस छोड़ने के लिए q दबाएँ। एक सक्रिय रन के दौरान यह रद्दीकरण का अनुरोध करता है, जहाँ संभव हो वर्तमान परीक्षण समाप्त करता है, पहले से लिखे गए परिणामों को सुरक्षित रखता है, और स्थिति 130 के साथ बाहर निकलता है। निष्पादन समाप्त होने के बाद, q सामान्य रूप से बाहर निकलता है।
TUI के लिए कम से कम 80 कॉलम गुणा 24 पंक्तियों का इंटरैक्टिव टर्मिनल आवश्यक है और इसे --dryRun के साथ संयोजित नहीं किया जा सकता। यह OpenAPI-समर्थित फ़ज़िंग कमांड के लिए उपलब्ध है; स्टैंडअलोन template कमांड सामान्य CLI आउटपुट का उपयोग करना जारी रखता है। TUI डिफ़ॉल्ट रूप से सबसे हाल के 10,000 परीक्षण विवरण बनाए रखता है; भिन्न सकारात्मक सीमा चुनने के लिए --tuiMaxResults का उपयोग करें। पुराने विवरण हटाए जाने पर भी समग्र आँकड़े पूरे रन को कवर करना जारी रखते हैं।
यह CATS का उपयोग कैसे करें पर चरण-दर-चरण मार्गदर्शिकाओं वाले लेखों की सूची है:
> brew tap endava/tap
> brew install cats
CATS को एक निष्पादन योग्य JAR या एक नेटिव बाइनरी दोनों के रूप में बंडल किया गया है। नेटिव बाइनरीज़ के लिए Java इंस्टॉल होने की आवश्यकता नहीं है।
अपनी OS नेटिव बाइनरी डाउनलोड करने के बाद, आप इसे PATH में जोड़ सकते हैं ताकि आप इसे किसी अन्य कमांड लाइन टूल की तरह निष्पादित कर सकें:
sudo cp cats /usr/local/bin/cats
आप cats_autocomplete स्क्रिप्ट डाउनलोड करके ऑटोकम्पलीट भी प्राप्त कर सकते हैं और यह करें:
source cats_autocomplete
स्थायी ऑटोकम्पलीट पाने के लिए, उपरोक्त पंक्ति को .zshrc या .bashrc में जोड़ें, लेकिन सुनिश्चित करें कि आप cats_autocomplete स्क्रिप्ट के लिए पूर्ण योग्य पथ डालें।
आप वैकल्पिक सेटअप के लिए cats_autocomplete स्रोत भी देख सकते हैं।
Windows के लिए कोई नेटिव बाइनरी नहीं है, लेकिन आप uberjar संस्करण का उपयोग कर सकते हैं। इसके लिए Java 25+ इंस्टॉल होना आवश्यक है।
आप इसे java -jar cats.jar के रूप में चला सकते हैं।
नवीनतम संस्करण डाउनलोड करने के लिए releases पृष्ठ पर जाएँ: https://github.com/Endava/cats/releases।