webapp-testing
اختبار تطبيقات الويب باستخدام أتمتة Playwright
متاح أيضًا من: 7Spade,DYAI2025,davila7,ArtemisAI,7Spade,Azeem-2,anthropics,ComposioHQ,Cam10001110101,AutumnsGrove
يتطلب اختبار تطبيقات الويب المحلية أتمتة متصفح موثوقة دون إعداد يدوي. توفر هذه الأدوات برامج نصية Playwright وإدارة خادم لتبسيط سير عمل اختبار الواجهة الأمامية.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "webapp-testing". اكتشاف جميع العناصر التفاعلية على localhost:5173
النتيجة المتوقعة:
- Found 12 buttons: [0] Submit, [1] Cancel, [2] Login...
- Found 8 links: - Dashboard -> /dashboard, - Profile -> /profile...
- Found 5 input fields: - email (email), - password (password)...
- Screenshot saved to /tmp/page_discovery.png
استخدام "webapp-testing". التقاط سجلات وحدة التحكم أثناء تدفق المستخدم
النتيجة المتوقعة:
- Console: [log] App initialized
- Console: [warning] Deprecated API usage
- Console: [error] Failed to load resource: net::ERR_CONNECTION_REFUSED
- Captured 15 console messages. Logs saved to outputs/console.log
التدقيق الأمني
مخاطر منخفضةStatic analysis flagged 38 patterns, but manual review confirms all HIGH-severity findings are false positives. The 'weak cryptographic algorithm' detections are scanner errors on argparse code. Shell backtick findings are Markdown documentation formatting. Subprocess usage in with_server.py is intentional server management functionality requiring explicit CLI invocation. Hardcoded localhost URLs and temp file writes are expected for local testing toolkit.
مشكلات منخفضة المخاطر (1)
عوامل الخطر
⚙️ الأوامر الخارجية (2)
📁 الوصول إلى نظام الملفات (2)
درجة الجودة
ماذا يمكنك بناءه
اختبار تراجع الواجهة الأمامية
أتمتة التحقق من مكونات واجهة المستخدم بعد تغييرات الكود لالتقاط التغييرات المكسرة قبل النشر.
التحقق من خادم التطوير
بدء خوادم الواجهة الأمامية والخلفية تلقائياً، تشغيل اختبارات التكامل، ثم تنظيف الموارد.
تصحيح سجلات وحدة التحكم
التقاط وتحليل مخرجات وحدة تحكم المتصفح لتحديد أخطاء وتحذيرات JavaScript أثناء تدفقات المستخدم.
جرّب هذه الموجهات
انتقل إلى تطبيق React المحلي على localhost:3000، وانتظر حتى تحميل الصفحة بالكامل، والتقط لقطة شاشة للصفحة الرئيسية.
زُر تطبيق الويب الخاص بك واذكر جميع الأزرار والروابط ونماذج الإدخال على الصفحة الحالية مع محتوى النص والسمات.
شغّل البرنامج النصي للأتمتة أثناء التقاط جميع رسائل وحدة تحكم في المتصفح. احفظ السجلات في ملف وأبلغ عن أي أخطاء أو تحذيرات تم العثور عليها.
ابدأ خادمي على المنافذ 8000 للواجهة الخلفية و5173 للواجهة الأمانية، ثم شغّل برنامج Playwright النصي الذي يسجل الدخول وينتقل إلى لوحة القيادة ويتحقق من وجود العناصر الرئيسية. نظّف الخوادم بعد اكتمال الاختبارات.
أفضل الممارسات
- انتظر دائماً حالة networkidle قبل التفاعل مع الصفحات الديناميكية للتأكد من تنفيذ JavaScript بالكامل
- استخدم البرنامج النصي المساعد with_server.py لإدارة دورة حياة الخادم بدلاً من بدء وإيقاف الخوادم يدوياً
- شغّل البرامج النصية أولاً بعلامة --help لفهم الخيارات المتاحة قبل تخصيص منطق الأتمتة
تجنب
- لا تفحص DOM أو التقط لقطات شاشة قبل انتظار networkidle على التطبيقات الديناميكية
- تجنب قراءة مصدر البرنامج في نافذة السياق - استخدم التوثيق --help واستدعِ كأدوات صندوق أسود
- لا تستخدم مؤقتات ثابتة مثل wait_for_timeout عندما يمكن انتظار محددات محددة باستخدام wait_for_selector