Cline هو حلقة: يخطط لتغيير، ويحرر الملفات، ويشغل الأوامر، ويقرأ المخرجات، ويقرر ما يجب فعله بعد ذلك. فلماذا لا تكون اختبارات API الخاصة بك في هذه الحلقة؟ إنها تجلس في Apidog خلف واجهة رسومية، تنتظر من يتذكر النقر. وكيلك لا يلمسها أبدًا.
الحل هو كتلة إعدادات واحدة. واجهة سطر الأوامر (CLI) الخاصة بـ Apidog هي حزمة npm، apidog-cli، تقوم بتشغيل سيناريوهات الاختبار التي أنشأتها في Apidog مباشرة من الطرفية. بمجرد تثبيت CLI ومعرفة Cline بوجودها، يقوم وكيلك بتشغيل سيناريو Apidog بنفس الطريقة التي يشغل بها اختبارات الوحدة الخاصة بك: يشغل الأمر، ويقرأ رمز الخروج، ويصلح الكود إذا عاد أحمر.
إذا لم تقم بتثبيت CLI بعد، فافعل ذلك أولاً. تشرح كيفية تثبيت Apidog CLI باستخدام وكيل ترميز بالذكاء الاصطناعي عملية تثبيت npm، والمصادقة، والتشغيل الأول، مع قيام Cline بالطباعة. يفترض هذا المقال أن apidog --version يطبع رقمًا وأن حساب Apidog الخاص بك موثق.
أي Cline نتحدث عنه
Cline هو وكيل الترميز المستقل مفتوح المصدر الذي يعمل كامتداد لـ VS Code (يوجد أيضًا إصدار JetBrains وواجهة سطر أوامر). يقرأ المستودع الخاص بك، ويخطط في وضع التخطيط (Plan mode)، ثم ينتقل إلى وضع التنفيذ (Act mode) لتحرير الملفات وتشغيل أوامر shell، طالبًا الموافقة بناءً على إعدادات الموافقة التلقائية الخاصة بك. إنه ليس روبوت محادثة مستضاف؛ النموذج يعمل مقابل قاعدة التعليمات البرمجية الخاصة بك على جهازك. إذا كانت لديك لوحة Cline مفتوحة في VS Code وتظهر فروقًا ومخرجات طرفية أثناء عملها، فأنت في المكان الصحيح. تغطي كيفية استخدام Cline أساسيات تثبيته واختيار نموذج.
يُعد هذا التمييز مهمًا لأن Cline لديه طريقته الخاصة في تعلم قواعد المشروع، وهذه الآلية تحول "تشغيل اختباراتي" لمرة واحدة إلى شيء يصل إليه Cline بمفرده. هذه الآلية هي دليل .clinerules/.
الخطوة 1: أضف القاعدة إلى .clinerules، وليس تذكيرًا في الدردشة
يقوم Cline بتحميل قواعد المشروع من دليل .clinerules/ في جذر مساحة العمل الخاصة بك قبل أن يبدأ مهمة. يقرأ كل ملف .md و .txt داخل هذا المجلد ويجمعها في مجموعة التعليمات التي يحملها خلال الجلسة. يمكنك أيضًا استخدام ملف .clinerules واحد إذا كنت تفضل ذلك، ولكن الدليل يتوسع بشكل أفضل مع تزايد قواعدك. هذا موثق في مرجع قواعد Cline.
أنشئ ملفًا مثل .clinerules/apidog.md في جذر المستودع الخاص بك بكتلة قصيرة كهذه:
# اختبار API باستخدام Apidog
- لاختبار واجهة برمجة التطبيقات (API)، قم بتشغيل Apidog CLI، وليس curl أو السكربتات المخصصة.
- الأمر: apidog run -t <scenario_id> -e <env_id> -r cli
- معرف السيناريو ومعرف البيئة يأتيان من تبويب CI/CD في Apidog. استخدم هذه القيم بالضبط.
- رمز الخروج 0 يعني أن كل تأكيد نجح. غير الصفر يعني فشلاً؛ رمز الخروج هو مصدر الحقيقة، وليس ملخصك.
- الجهاز موثق بالفعل عبر `apidog login`. لا تقم أبدًا بإضافة --access-token ولا تضع رمزًا مميزًا في هذا الملف.
- إذا كانت علامة غير معروفة، قم بتشغيل `apidog run --help` واستخدم العلامة الدقيقة من هناك.
لهذا السبب تكتب CLI في .clinerules/ بدلاً من ذكره في الدردشة. معرف السيناريو الذي يتم إدخاله في رسالة Cline يختفي عند انتهاء المهمة. أما الموجود في .clinerules/apidog.md فهو موجود لكل زميل في الفريق يقوم بسحب المستودع ولكل مهمة Cline من الآن فصاعدًا. الملف يخضع للتحكم في الإصدارات، لذا تنتقل القاعدة مع الكود.
الخطوة 2: احصل على الأمر من Apidog
أنت بحاجة إلى أمر apidog run الحقيقي، وليس أمرًا مخمنًا. افتح سيناريو الاختبار في Apidog، اذهب إلى تبويب CI/CD الخاص به، وانسخ الأمر الذي تم إنشاؤه. يبدو كالتالي:
apidog run -t 8291 -e 42 -r cli
القيمة -t هي معرف سيناريو الاختبار الخاص بك و -e هو معرف البيئة. هذه هي القيم الدقيقة التي يجب أن تكون في .clinerules/apidog.md. الصقها في كتلة القاعدة لكي يكون لدى Cline دائمًا المعرفات الصحيحة. للحصول على المجموعة الكاملة للعلامات، راجع مرجع أمر apidog run.
الخطوة 3: اجعل Cline يشغل الاختبار
مع وجود القاعدة في مكانها، ابدأ مهمة في لوحة Cline. يقوم Cline بتحميل .clinerules/ عند البدء، لذلك فهو يعرف بالفعل أن CLI موجودة. قم بإجراء تغيير يمس واجهة برمجة التطبيقات الخاصة بك، أو اطلب منه فقط تشغيل التحقق:
Run the Apidog test scenario and tell me the result.
يخطط Cline للخطوة، ثم ينتقل إلى وضع التنفيذ (Act mode) لإصدار أمر apidog run من قواعدك. يعتمد مقدار ما يطلبه أولاً على إعدادات الموافقة الخاصة بك. يقوم Cline بتقييم كل أمر ويصنفه على أنه آمن أو يحتاج إلى موافقة؛ سيناريو اختبار للقراءة فقط مقابل بيئة الاختبار هو نوع الأمر الذي يعامله على أنه آمن. إذا كانت إعدادات الموافقة التلقائية الخاصة بك تسمح بتنفيذ الأوامر الآمنة، فسيتم تشغيل apidog run بدون مطالبة. وإلا، سيتوقف Cline ويسأل؛ وافق عليه، وقم بتشغيل الموافقة التلقائية للأوامر الآمنة التنفيذ إذا كنت تريد تشغيل السيناريوهات المستقبلية بمفرده. يقوم المُرَاسِل -r cli بطباعة نتيجة خطوة بخطوة وملخص مباشرة في الطرفية، حيث تشاهد كل طلب وتأكيد أثناء حدوثه.
الخطوة 4: اقرأ التقرير داخل Cline
عندما يتحول التشغيل إلى اللون الأحمر، يحتوي التقرير على الإجابة. مع -r cli، يحصل Cline على تفصيل قابل للقراءة في لوحة مخرجات الطرفية: كل طلب، كل تأكيد، وأي واحد فشل، مع القيمة المتوقعة مقابل القيمة الفعلية. يسمي التأكيد الفاشل الحقل الدقيق أو رمز الحالة، وهو عادة ما يكون كافيًا لـ Cline للعثور على الإصلاح في مروره التالي.
للحصول على تقرير يمكنك فتحه في متصفح أو تسليمه لزميل في الفريق، أضف مُرَاسِل HTML:
apidog run -t 8291 -e 42 -r cli,html
يكتب مُرَاسِل html ملفًا ذاتيًا إلى ./apidog-reports. حافظ على cli في القائمة لكي يظل Cline يحصل على الإخراج المضمّن الذي يقرأه لتحديد خطوته التالية. لكل علامة ومُرَاسِل، بما في ذلك تنسيق JUnit الذي تحلله لوحات معلومات CI، راجع الدليل الكامل لـ Apidog CLI ودليل تقارير اختبار Apidog CLI.
اختبار Cline داخل حلقته الخاصة
المكافأة هي ما يحدث عندما تتوقف عن السؤال ويقوم Cline بتشغيل السيناريو بمفرده لأن .clinerules/ أمره بذلك.
تخيل Cline وهو يعدل معالجًا يبني استجابة لعملية الدفع. تتغير حلقته: يقوم بتحرير الكود، ثم، بدلاً من إعلان النصر، يشغل سيناريو Apidog الخاص بك مقابل بيئة الاختبار، ويقرأ رمز الخروج، ويتصرف بناءً عليه. أخضر، ينتقل. أحمر، يفتح التقرير، يقرأ أي تأكيد فشل (رمز الحالة، الحقل المفقود، القيمة الخاطئة)، يحاول إصلاحًا، ويعيد التشغيل. يصبح اختبار API جزءًا من نفس حلقة التعديل-الاختبار-الإصلاح التي يشغل Cline اختبارات وحدتك من خلالها بالفعل. لقد كتبت تعليمًا واحدًا وقام Cline بدمج الأمر في كيفية عمله بالفعل.
هذا هو نموذج التفويض ثم التحقق الذي يجعل أي سير عمل للوكيل آمنًا. يقوم Cline بتشغيل الأمر وقراءة النتيجة؛ بينما تستمر أنت في تأليف السيناريوهات بصريًا في Apidog والتحقق من أن الوكيل يقرأ رموز الخروج بصدق. للحصول على النمط الأوسع، راجع كيفية استخدام وكلاء الذكاء الاصطناعي لاختبار API وحزمة اختبار Apidog AI.
تحقق من أن Cline يشغل CLI بالفعل
يُبلغ الوكلاء عن نجاح لم يكسبوه، وCline ليس استثناءً. ثلاث فحوصات، بترتيب تكرار اكتشافها للمشكلات.
أولاً، تأكد من تشغيل الأمر على الإطلاق. يعرض Cline الأوامر التي نفذها ومخرجاتها المضمنة في عرض المهام. ابحث عن السطر الحرفي apidog run ... ونتيجته أسفله. إذا قال Cline إنه أجرى الاختبارات ولكنك لا ترى الأمر، فقد لخص شيئًا لم يفعله أبدًا. اطلب منه التشغيل مرة أخرى وإظهار المخرجات الأولية.
ثانيًا، تأكد من رمز الخروج، وهو الرمز المهم:
What was the exit code of that apidog run command?
يخرج apidog run بالرمز 0 عندما تنجح كل التأكيدات ورمز غير صفري عندما يفشل أي شيء. يتيح هذا السلوك الفردي لـ Cline، أو لأي مسار عمل، التعامل مع التشغيل كبوابة نظيفة. عندما يقول نص Cline أن "الاختبارات نجحت" ولكن رمز الخروج غير صفري، فإن رمز الخروج هو الأصح.
ثالثًا، تأكد من أنه استخدم السيناريو الحقيقي. إذا فشل التشغيل مع رسالة "السيناريو غير موجود"، فقد يكون Cline قد اخترع أو نسي معرفًا. أعد التحقق من قيم -t و -e مقابل .clinerules/apidog.md والأمر الذي أنشأه Apidog في تبويب CI/CD. المعرفات في ملف القواعد هي الحقيقة.
اختياري: ربط خادم Apidog MCP
تشغيل apidog run من .clinerules/ يغطي معظم ما تحتاجه. هناك طريق واحد يذهب أبعد من ذلك.
يتمتع Cline بدعم من الدرجة الأولى لبروتوكول سياق النموذج (Model Context Protocol). في امتداد VS Code، انقر على أيقونة MCP Servers في لوحة Cline، افتح Configure، ثم انقر على Configure MCP Servers لفتح cline_mcp_settings.json؛ أضف الخادم الخاص بك تحت كائن mcpServers. يمكنك أيضًا تصفح سوق MCP داخل Cline لتثبيت الخوادم دون تحرير JSON يدويًا، كما هو موضح في وثائق Cline MCP. يعرض خادم Apidog MCP مواصفات واجهة برمجة التطبيقات الخاصة بك عبر MCP، بحيث يمكن لـ Cline قراءة المخطط الخاص بك أثناء كتابة الكود، وليس فقط بعد ذلك. يشغل CLI الاختبارات؛ وتغذي MCP الوكيل بالمواصفات.
Cline هو امتداد تفاعلي، لذلك لا يوجد وضع اختبار غير تفاعلي مدمج فيه بالطريقة التي يوفرها برنامج تشغيل بلا واجهة رسومية. لتشغيل apidog run في مسار عمل (pipeline) بدون وجود Cline، تغطي Apidog CLI في GitHub Actions الأسرار والمراسلين وبوابة رمز الخروج، ويغطي دليل مسار عمل Apidog CLI CI/CD الإعداد الأوسع.
عندما يخطئ Cline
تظهر بعض الإخفاقات غالبًا أثناء الإعداد.
يتجاهل ملف القواعد. إذا قام Cline بتشغيل أمر عام أو لم يشغل أي شيء على الإطلاق، فقد لا تكون القاعدة محملة. تأكد من أن اسم المجلد هو .clinerules بالضبط وأنه يقع في جذر مساحة العمل الخاصة بك، وأن الملف بداخله ينتهي بـ .md أو .txt. بدء مهمة جديدة يجبر Cline على إعادة تحميل القواعد.
يمرر رمز وصول على أي حال. إذا حاول Cline إضافة --access-token، فإنه يخمن من الأمثلة العامة. القاعدة تخبره بالفعل ألا يفعل ذلك، لأن الجهاز موثق عبر apidog login. عزز هذا السطر، ولا تضع أبدًا رمزًا مميزًا حقيقيًا في .clinerules/. لمعرفة كيفية عمل المصادقة بالفعل، راجع دليل مصادقة Apidog CLI.
يخترع علامة. يعني خطأ "خيار غير معروف" أن Cline خمن علامة لا يمتلكها إصدارك. اطلب منه تشغيل apidog run --help وانسخ العلامة الدقيقة من هناك، والتي تكون دائمًا صحيحة للإصدار المثبت لديك.
يُبلغ عن نجاح في تشغيل فاشل. هذا هو الأكثر تكلفة، وهو السبب في أن قاعدة رمز الخروج موجودة في كل من ملف .clinerules/ الخاص بك وخطوة التحقق الخاصة بك. عندما يختلف الملخص ورمز الخروج، فإن رمز الخروج هو الأصح.
من وكيل يومي إلى حلقة مختبرة
هذا هو الإعداد. قم بتثبيت apidog-cli مرة واحدة باتباع دليل التثبيت، أضف قاعدة Apidog قصيرة إلى دليل .clinerules/ في المستودع الخاص بك، وسيعرف Cline كيفية تشغيل اختبارات API الخاصة بك وقراءة النتيجة داخل نفس الحلقة التي يستخدمها بالفعل لتحرير الكود. يتم اكتشاف نقطة نهاية معطلة بينما لا يزال Cline يعمل على التغيير، وليس بعد إطلاقه.
الاختبار خلف واجهة رسومية يعمل عندما ينقر إنسان؛ أما أمر من سطر واحد فيعمل كلما قرر Cline ذلك. تستمر في بناء السيناريوهات بصريًا في Apidog، ويشغل وكيلك هذه السيناريوهات حيث لا تشاهدها. قم بتنزيل Apidog، أنشئ سيناريو واحدًا، ضع أمر apidog run الخاص به في .clinerules/apidog.md، وشاهد Cline يلتقطه عند التغيير التالي.
