أداة اختبار أحمال عالية الأداء لواجهات برمجة التطبيقات مبنية بلغة Go

تفاصيل العمل

مشروع Sayl هو محرك اختبار حمل (Load Testing Engine) عالي الأداء تم بناؤه بالكامل باستخدام لغة Golang. قمت بتطوير هذه الأداة لتوفير حل مرن وقوي للمطورين لاختبار استقرار وسرعة استجابة الـ APIs الخاصة بهم تحت ظروف ضغط قاسية.

صممت الأداة لتعمل بكفاءة عالية باستخدام موارد قليلة، معتمدة على مبدأ Go Concurrency لتوليد آلاف الطلبات المتزامنة في الثانية.

أهم المميزات التقنية (Key Features):

بنية معمارية قوية (Clean Architecture): تم تصميم المشروع ليكون قابلاً للتوسع والصيانة، مع فصل واضح بين الـ Attacker logic، الـ Stats collection، والـ Reporting.

لوحة تحكم تفاعلية (Real-time TUI): واجهة مستخدم في التيرمينال تعرض إحصائيات حية (Live Dashboard) عن حالة الاختبار، معدل الطلبات (RPS)، ونسب الخطأ، مما يسهل مراقبة الأداء لحظياً.

دعم السيناريوهات المعقدة: على عكس أدوات الاختبار التقليدية، يدعم Sayl "سلاسل السيناريوهات" (Scenario Chains) وتمرير المتغيرات (Variables) بين الطلبات لمحاكاة سلوك المستخدم الحقيقي.

أنظمة حماية وموثوقية (Reliability Patterns): تطبيق نمط Circuit Breaker لإيقاف الاختبار تلقائياً في حال تدهور حالة السيرفر، مما يحاكي بيئات الإنتاج الحقيقية.

مرونة في التكوين (Configuration): دعم كامل لملفات YAML/JSON لتعريف الاختبارات، بما في ذلك تحميل البيانات من ملفات CSV، وتخصيص الـ Headers، والتحقق من صحة الاستجابة (Assertions).

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
4
تاريخ الإضافة
تاريخ الإنجاز
المهارات