
أداة اختبار سريع لواجهات REST API واختبار سلبي لنقاط نهاية OpenAPI. تولّد وتنفّذ وتُبلغ عن آلاف الاختبارات ذاتية الإصلاح دون أي جهد برمجي، وتغطي سيناريوهات الحدود والأمان.
وثائق CATS متاحة على https://endava.github.io/cats/
أداة اختبار تشويش REST API والاختبارات السلبية. قم بتشغيل آلاف اختبارات API ذاتية الشفاء في دقائق دون أي جهد برمجي!
وقتك قصير؟ اطلع على دليل البدء السريع لمدة دقيقة واحدة!
باستخدام بناء جملة بسيط وحد أدنى، مع منحنى تعلم منخفض، يمكّنك CATS (Contract API Testing and Security) من إنشاء آلاف اختبارات API في دقائق بدون أي جهد برمجي. يتم إنشاء وتشغيل وإعداد تقارير جميع الاختبارات تلقائياً بناءً على مجموعة محددة مسبقاً من أكثر من 100 مولد تشويش. تغطي مولدات التشويش نطاقاً واسعاً من اختبارات الحدود والسيناريوهات السلبية، بدءاً من القيم العشوائية الكبيرة لـ Unicode وصولاً إلى القيم المصممة بعناية والمعتمدة على السياق بناءً على أنواع البيانات والقيود في الطلب. بل يمكنك الاستفادة من حقيقة أن CATS يُنشئ حمولات الطلب ديناميكياً وكتابة اختبارات وظيفية شاملة من البداية إلى النهاية.
هذه قائمة بمقالات تحتوي على أدلة خطوة بخطوة حول كيفية استخدام CATS:
> brew tap endava/tap
> brew install cats
يتم توزيع CATS كملف JAR قابل للتنفيذ أو كملف ثنائي أصلي. الملفات الثنائية الأصلية لا تحتاج إلى تثبيت Java.
بعد تنزيل الملف الثنائي الأصلي الخاص بنظام التشغيل لديك، يمكنك إضافته إلى 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.
انتقل إلى صفحة الإصدارات لتنزيل أحدث إصدار: https://github.com/Endava/cats/releases.
يمكنك بناء CATS من المصدر على جهازك المحلي. تحتاج Java 25. Maven مضمّن بالفعل.
قبل تشغيل أول بناء، تأكد من تنفيذ
./mvnw clean. يستخدم CATS نسخة معدلة من OKHttp سيتم تثبيتها محلياً ضمن الإصدار5.X.X-CATS، لذا لا تقلق بشأن استبدال الإصدارات الرسمية.
يمكنك استخدام أمر Maven التالي لبناء المشروع كـ uberjar:
./mvnw package -Dquarkus.package.type=uber-jar
سينتهي بك الأمر مع ملف cats-runner.jar في مجلد target. يمكنك تشغيله باستخدام java -jar cats-runner.jar ....
يمكنك أيضاً بناء صور أصلية باستخدام إصدار Java من GraalVM.
./mvnw package -Pnative
قد ترى بعض رسائل error في السجل أثناء تشغيل اختبارات الوحدة. هذا سلوك متوقع لاختبار السيناريوهات السلبية لمولدات التشويش.
يرجى الرجوع إلى CONTRIBUTING.md.