7:49AI LABS
Log in to leave a comment
No posts yet
تعد أتمتة المتصفح عنصرًا أساسيًا في التطوير الحديث، ولكن بمجرد إقحام وكلاء الذكاء الاصطناعي (AI Agents) في هذا المجال، تزداد الأمور تعقيدًا. أي مطور سبق له استخدام Playwright التقليدي أو Puppeteer MCP (بروتوكول سياق النموذج) سيعرف هذه المعاناة: سياق متضخم، بنية مجلدات فوضوية، ومعدل إنجاز مهام منخفض يتوقف في اللحظات الحاسمة، مما يختبر صبر المطور.
المشكلة الأكبر هي الكفاءة. تستهلك طرق MCP مفتوحة المصدر التقليدية ما بين 13,700 إلى 19,000 توكن (Token) مع كل تهيئة جلسة لنقل حالة المتصفح إلى النموذج. هذا يعني استهلاك الموارد التي يجب استخدامها في الاستدلال الفعلي على إعدادات البيئة فقط. في المقابل، تصل إضافة Claude Code لمتصفح كروم مباشرة إلى واجهات برمجة التطبيقات (APIs) الداخلية للمتصفح. وبما أنها تشارك جلسة المستخدم الفعلية، فإنها تمنع جذريًا مشكلة التصحيح الكلاسيكية: "البرنامج يعمل على جهازي ولكنه لا يعمل مع الذكاء الاصطناعي".
يعتمد نجاح أو فشل اختبار الذكاء الاصطناعي على مدى دقة المعلومات المقدمة. يجب تطبيق ثلاث استراتيجيات عملية للتخلص من البيانات غير الضرورية وتعظيم الكفاءة.
تعتمد أدوات الأتمتة التقليدية على نصوص عناصر DOM. ولكن بالنسبة لنموذج يتمتع بقدرات رؤية قوية مثل Claude، فإن لقطة شاشة للصفحة كاملة تكون أكثر فاعلية بكثير. إن صورة واحدة بحجم حوالي 500 كيلوبايت تحمل كثافة معلومات أعلى من إرسال عشرات الآلاف من أسطر كود HTML المتسلسلة نصيًا. من خلال ذلك، يمكن اكتشاف عيوب التخطيط المتجاوب أو تداخل العناصر (Visual Regression) دفعة واحدة.
تعد بنرات الموافقة على ملفات تعريف الارتباط (Cookies) والنوافذ المنبثقة للنشرات الإخبارية الجناة الرئيسيين في قطع تدفق الذكاء الاصطناعي. لا تترك الذكاء الاصطناعي يستهلك التوكنز الثمينة لإغلاق هذه النوافذ. يجب عليك تحديد سكربتات تنفيذ مسبقة في ملف CLAUDE.md لإخفاء العناصر التي تحمل سمات [aria-modal="true"] أو السمات المتعلقة بالـ Cookies قسريًا. وفقًا لبيانات بحثية فعلية، يمكن لهذه المعالجة المسبقة وحدها تقليل احتمالية حدوث أخطاء الاختبار بنسبة تزيد عن 25%.
بدلاً من ترك الذكاء الاصطناعي يقرأ الـ HTML بالكامل بشكل عشوائي، وجهه للإشارة إلى عناصر محددة بدقة. الأولويات هي كالتالي:
[data-testid="submit-btn"].[aria-label="تسجيل الدخول"].تقوم مواصفات Manifest V3 في كروم بإيقاف عامل خدمة الخلفية (Background Service Worker) إذا استمرت حالة الخمول لمدة 30 ثانية تقريبًا. هذه هي النقطة التي يواجه فيها الذكاء الاصطناعي ما يسمى بـ "جدار الـ 30 ثانية"، حيث يفقد حالة المتصفح في اختبارات E2E الطويلة.
لحل هذه المشكلة، يعد تصميم الاختبارات المعياري (Modular Test Design) أمرًا ضروريًا؛ حيث يتم تقسيم السيناريوهات الضخمة إلى وحدات صغيرة يمكن التحقق منها بشكل مستقل بدلاً من تشغيلها ككتلة واحدة. قم بإنشاء ملف منفصل مثل tasks/status.md لتسجيل تقدم الاختبار في الوقت الفعلي. حتى لو انقطعت الجلسة، سيقرأ الذكاء الاصطناعي هذا السجل ويستأنف العمل فورًا من النقطة التي توقف عندها. كما تفيد حيلة إضافة منطق "نبض القلب" (Heartbeat) الذي يستدعي API خفيفًا كل 25 ثانية لإعادة تعيين مؤقت الخمول قسريًا.
عند بناء بيئة فعلية تتجاوز النظرية، لا تغفل عن التفاصيل التالية:
--user-data-dir لإنشاء ملف تعريف كروم مخصص للاختبار. هذا يمنع التداخل مع جلساتك الشخصية ويحافظ على حالة تسجيل الدخول المطلوبة بشكل مستقر.يُظهر الجمع بين Claude Code وإضافة كروم كيف تطور الذكاء الاصطناعي من مجرد مراقب إلى فاعل حقيقي. إذا قمت بتقليل العبء الناتج عن أساليب MCP التقليدية وتجاوزت قيود Manifest V3 من خلال التصميم الذكي، فلن تحتاج بعد الآن إلى إضاعة الوقت في الاختبارات اليدوية المتكررة.
في النهاية، لا يقتصر نجاح اختبار الذكاء الاصطناعي على الإعدادات التقنية، بل يعني تحسين بنية العمل نحو التطوير القائم على التقييم (Evaluation Driven Development). ابدأ الآن بإدخال تعليمات محسنة في جذر مشروعك لبناء بيئة أتمتة ترفع جودة البرمجيات بشكل جذري.