وكيل n8n يكتب حالات الاختبار: يأخذ حالة الاستخدام من «Pachka» والمتطلبات من «ياندكس ويكي»
كي تكتب الشبكة العصبية حالات اختبار صالحة، لا تكفي حالة استخدام واحدة في الدردشة، بل تلزم المتطلبات، أي الحاجة إلى تكاملات. بنى المؤلف سير عمل في n8n: بوت في «Pachka» يلتقط حالة الاستخدام، ويطلب رابط المتطلب، ويجلب الصفحة من «ياندكس ويكي» عبر MCP، ثم يسلّم كل ذلك إلى النموذج. يصل رد النموذج مباشرة إلى الخيط الذي يحوي حالة الاستخدام. لا توجد عقدة رسمية لـ«ويكي»، لكن MCP يتجاوز هذه المشكلة.
معالج بواسطة الذكاء الاصطناعي من Habr AI؛ بتحرير Hamidun News
لن تنجح محاولة إلقاء حالة استخدام في بوت دردشة والحصول على حالات اختبار جيدة: فالأخطاء تختبئ في التفاصيل، والنموذج لا يملك هذه التفاصيل. هو يحتاج إلى سياق: المتطلبات والتذاكر والمراسلات. ولتقديم هذا السياق تلزم تكاملات. يعرض كاتب التحليل المنشور على Habr نسخة minimal من هذا المسار على n8n: من رسالة في دردشة العمل إلى حالة اختبار جاهزة.
ماذا نبني وعلى أي أساس
n8n أداة لبناء الوكلاء تربط النماذج بالشيفرة وأنظمة تتبع المهام وCI وبقية البنية التحتية. كل إجراء عقدة مستقلة، وتُركَّب العقد في سير عمل كما تُركَّب قطع الليغو. ويمكن تصدير سير العمل بصيغة JSON. الشيفرة المصدرية مفتوحة: في سحابة n8n تدفع ثمن الاستضافة وكل عملية تشغيل، أما على بنيتك التحتية فالأمر مجاني. التكاملات تزيد على 2600، ولذلك يمكن بناء وكيل يناسب معظم البيئات التقنية. مثلًا: توليد حالات اختبار من تذاكر Jira والوثائق في GitHub مع البحث عبر Pinecone.
السيناريو في المقال أبسط. المتطلب موجود في «ياندكس ويكي»، وحالة الاستخدام في دردشة «Pachka». المنطق من أربع خطوات:
- ينتظر الوكيل حالة الاستخدام من المستخدم في الدردشة؛
- يطلب عبر نموذج (فورم) عنوان URL لصفحة المتطلب، كتعليق على الرسالة؛
- يمرّر إلى النموذج حالة الاستخدام والمتطلب؛
- يعيد الرد إلى خيط حالة الاستخدام.
كيف نربط «Pachka» و«ويكي»
من جهة «Pachka» يجب إنشاء بوت وتفعيل webhook صادر له. يذكر المؤلف ثلاثة خيارات: تجاهل رسائله الخاصة (كي لا يستفز البوت نفسه)، والاستماع إلى أي رسائل، والاستجابة للنقر على الأزرار. يعرض النظام الرمز مرة واحدة فقط، لذا يجب حفظه فورًا. الصلاحيات: messages:read وmessages:create وthreads:read وthreads:create وviews:write، والأخيرة لازمة كي يمرّر المستخدم عنوان URL للمتطلب عبر النموذج. يُلصق عنوان webhook ومفتاح التوقيع في مشغّل n8n.
هناك مطب. زر Execute لا يستمع إلى عنوانك، بل إلى عنوان اختباري، ولذلك لا يمكن اختبار المشغّل بهذه الطريقة. يبقى طريقان: إنشاء بوت اختباري منفصل أو نشر سير العمل. في سير العمل المنشور تلتقط المشغّلات الأحداث بنفسها، وتظهر النتيجة في تبويب Executions.
مع «ياندكس ويكي» الأمر أصعب: لا توجد عقدة جاهزة، لكن خادم MCP يعمل. يلزم تطبيق OAuth بصلاحية wiki:read، ورمز يُحصل عليه عبر رابط التفويض مع ClientID الخاص بك، ومعرّف المؤسسة. وهو X-Org-ID لـ«ياندكس 360 للأعمال»، وX-Cloud-Org-ID لـ Yandex Cloud Organization. في Credentials داخل n8n يُنشأ سجل من نوع Multiple Headers Auth بترويستين: Authorization وترويسة المؤسسة.
بعد ذلك خياران. العقدة المربعة MCP Client تستدعي الأداة مباشرة. أما العقدة الدائرية MCP Client Tool فتُوصَل بعقدة النموذج، ويقرر النموذج نفسه ما يطلبه. اختار المؤلف الاستدعاء المباشر: HTTP Streamable، ونقطة النهاية mcp.wiki.yandex.net، والأداة GetPageById. العقبة في معرّف الصفحة: لا يمكن الحصول عليه إلا عبر API «ويكي» بطلب بحسب الـ slug، مثلًا بأمر curl مع الرمز وترويسة المؤسسة.
ما النتيجة وما القيود
تنتقل البيانات بين العقد بصيغة JSON، ويُوصَل إلى مخرجات العقدة السابقة عبر $json.اسم_المتغير. وأسهل طريقة لمعرفة أسماء المتغيرات هي النظر في تبويب Executions بعد أي تشغيل، حتى الفاشل. النتيجة: يتلقى البوت حالة الاستخدام، ويسأل عن رابط المتطلب، ثم يعيد حالة الاختبار إلى الخيط. نشر المؤلف سير العمل الجاهز على GitHub بصيغة JSON.
حتى الآن هذا عرض للإمكانات لا تقييم للجودة. لا توجد مقاييس: لم يُذكر مدى تطابق حالات الاختبار المولّدة مع المكتوبة يدويًا، ولا عدد الأخطاء التي تفوتها. ويحذّر المؤلف نفسه من المزالق: الأداة لن تستخرج المتطلبات الموجودة في رأس العميل فقط، ولن تعفي من الهلوسات ومن الفحص اليدوي. وستُخصص لها المقالة التالية.
ماذا نفعل عمليًا. إذا كان لدى الفريق «Pachka» و«ويكي» فيمكن تكرار سير العمل في أمسية واحدة. في أول تجربة يكفي الاستدعاء المباشر لـ MCP: فهو أكثر قابلية للتنبؤ من ترك اختيار الأداة للنموذج (هذا رأي منا، ولا توجد مثل هذه المقارنة في المقال). احتفظ ببيانات الاعتماد في Credentials لا في العقد نفسها. افحص النتيجة على 5–10 حالات استخدام حقيقية وقارنها بما كان سيكتبه مختبِر. وبعد ذلك فقط قرّر ما إذا كان هذا الوكيل ضروريًا في العملية.
- 12 نوفمبر 2026مهندسو الجودة في SpaceWeb كلّفوا الذكاء الاصطناعي بكتابة الاختبارات الآلية: سكربت عملي في 50 دقيقة
- 9 نوفمبر 2026فريق Dokumenterra يعهد إلى Claude بكتابة اختبارات آلية في خمس ساعات
- 15 سبتمبر 2026صفقة بين Cognition وAWS: Devin يختصر تحديث COBOL من 8 أشهر إلى 8 أيام
- 31 أكتوبر 2026وكلاء الذكاء الاصطناعي يعدّلون نشرات الاكتتاب العام وفق ملاحظات SEC: التعلّم أضاف 3,7 نقطة مئوية
أسئلة وأجوبة حول الخبر
ما أبرز التفاصيل حول ماذا نبني وعلى أي أساس؟
n8n أداة لبناء الوكلاء تربط النماذج بالشيفرة وأنظمة تتبع المهام وCI وبقية البنية التحتية. كل إجراء عقدة مستقلة، وتُركَّب العقد في سير عمل كما تُركَّب قطع الليغو. ويمكن تصدير سير العمل بصيغة JSON. الشيفرة المصدرية مفتوحة: في سحابة n8n تدفع ثمن الاستضافة وكل عملية تشغيل، أما على بنيتك التحتية فالأمر مجاني. التكاملات تزيد على 2600، ولذلك يمكن بناء وكيل يناسب معظم البيئات التقنية. مثلًا: توليد حالات اختبار من تذاكر Jira والوثائق في GitHub مع البحث عبر Pinecone. السيناريو في المقال أبسط.
ما أبرز التفاصيل حول كيف نربط «Pachka» و«ويكي»؟
من جهة «Pachka» يجب إنشاء بوت وتفعيل webhook صادر له. يذكر المؤلف ثلاثة خيارات: تجاهل رسائله الخاصة (كي لا يستفز البوت نفسه)، والاستماع إلى أي رسائل، والاستجابة للنقر على الأزرار. يعرض النظام الرمز مرة واحدة فقط، لذا يجب حفظه فورًا. الصلاحيات: messages:read وmessages:create وthreads:read وthreads:create وviews:write، والأخيرة لازمة كي يمرّر المستخدم عنوان URL للمتطلب عبر النموذج. يُلصق عنوان webhook ومفتاح التوقيع في مشغّل n8n. هناك مطب.
ما أبرز التفاصيل حول ما النتيجة وما القيود؟
تنتقل البيانات بين العقد بصيغة JSON، ويُوصَل إلى مخرجات العقدة السابقة عبر $json.اسم_المتغير. وأسهل طريقة لمعرفة أسماء المتغيرات هي النظر في تبويب Executions بعد أي تشغيل، حتى الفاشل. النتيجة: يتلقى البوت حالة الاستخدام، ويسأل عن رابط المتطلب، ثم يعيد حالة الاختبار إلى الخيط. نشر المؤلف سير العمل الجاهز على GitHub بصيغة JSON. حتى الآن هذا عرض للإمكانات لا تقييم للجودة. لا توجد مقاييس: لم يُذكر مدى تطابق حالات الاختبار المولّدة مع المكتوبة يدويًا، ولا عدد الأخطاء التي تفوتها.
Build & Ship Production AI Agents Without Boilerplate Code
Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.
أهم ما في عالم الذكاء الاصطناعي — مرة كل أسبوع
سبع قصص مهمة فعلاً هذا الأسبوع، مختارة بعناية. بلا ضجيج ولا بيانات صحفية.
تم! تحقق من بريدك للتأكيد.