يُعد Postman CLI طريقة جيدة لتشغيل مجموعات Postman الخاصة بك في مسار عمل (pipeline)، ولكنه يربط عمليات تشغيل الاختبار الخاصة بك بحساب Postman وسحابة Postman، وهذا الترتيب لا يناسب كل فريق. يرشدك هذا الدليل إلى خمسة بدائل قوية لتشغيل اختبارات API في CI، وما يميز كل منها حقًا، ومكانة Apidog CLI كخيار موصى به. للحصول على خلفية حول كيفية ارتباط Postman CLI بنظيره الأقدم، راجع مقارنة Postman الخاصة بين Postman CLI و Newman.
لماذا تتجاوز الفرق Postman CLI
Postman CLI هي الأداة التي يشير Postman إليها الآن لـ CI/CD. تقوم بتشغيل المجموعات، وتقدم التقارير، وتعرض نتائج هذه العمليات داخل تطبيق Postman. هذا الجزء الأخير هو نقطة الاحتكاك للعديد من الفرق.
لاستخدام Postman CLI، تقوم بتسجيل الدخول باستخدام مفتاح Postman API، وترسل عمليات التشغيل الخاصة بك تقاريرها إلى سحابة Postman. هذا مريح إذا كان سير عملك بالكامل يعيش بالفعل في Postman. ولكنه يمثل مشكلة إذا واجهت قيود الارتباط السحابي، أو الترخيص، أو الاحتكار:
- الارتباط السحابي. يتم التحقق من صحة عمليات التشغيل مقابل حساب Postman، وتظهر نتائج التنفيذ في تطبيق Postman. غالبًا ما لا تستطيع المتاجر المعزولة عن الشبكة أو الحساسة للامتثال قبول هذه الرحلة ذهابًا وإيابًا.
- الترخيص. توجد المجموعات والبيئات وميزات الفريق خلف مستويات خطط Postman. ومع نمو فريقك، تتغير حسابات التكلفة لكل مستخدم.
- الاحتكار. مصدر الحقيقة الخاص بك هو مجموعة Postman. الانتقال عنها لاحقًا يعني التصدير وإعادة الأدوات.
لا شيء من ذلك يجعل Postman CLI سيئًا. إنه يدفع الكثير من الفرق للبحث عن أداة تشغيل (runner) تحتفظ بالاختبارات في مستودعاتهم الخاصة، وتعمل دون اتصال بالإنترنت، ولا تفرض رسومًا لكل مستخدم لتشغيل مسار عمل. إليك خمسة بدائل تستحق المعرفة.
مقارنة سريعة
| الأداة | تنسيق الاختبار | حساب مطلوب للتشغيل | الترخيص | الأفضل لـ |
|---|---|---|---|---|
| Apidog CLI | سيناريوهات / مجموعات اختبار Apidog، أو ملفات مُصدرة | لا (يعتمد على الرمز المميز لمزامنة المشروع) | تجاري، طبقة مجانية | الفرق التي تصمم، تحاكي، تختبر، وتوثق في مكان واحد |
| Newman | ملف JSON لمجموعة Postman | لا | مفتوح المصدر (Apache-2.0) | مستخدمو Postman الحاليون الذين يرغبون في تشغيل دون اتصال |
| Hoppscotch CLI | ملف JSON لمجموعة Hoppscotch | لا (مسار تصدير JSON) | مفتوح المصدر | مستخدمو Hoppscotch، المستضيفون ذاتيًا |
| inso (Insomnia CLI) | مجموعات اختبار Insomnia عبر مزامنة Git | لا | مفتوح المصدر | فرق Insomnia و Git الأصلية |
| Hurl | ملفات .hurl نصية عادية |
لا | مفتوح المصدر | المهندسون الذين يرغبون في اختبارات بأسلوب curl في التحكم في الإصدار |
1. Apidog CLI
Apidog CLI هو أداة التشغيل بلا واجهة رسومية (headless runner) لـ Apidog، وهي منصة API شاملة تغطي التصميم، والتصحيح، والاختبار، والمحاكاة، والتوثيق. يمكنك تشغيل سيناريوهات الاختبار ومجموعات الاختبار من الطرفية (terminal) باستخدام apidog run، وهو نفس الأمر الذي تضعه في مسار عمل CI/CD.

ما يجعله الخيار الموصى به هنا ليس أداة التشغيل وحدها. بل هو أن أداة التشغيل هذه تعتمد على مصدر واحد للحقيقة. يعيش عقد OpenAPI الخاص بك، وسيناريوهات الاختبار الخاصة بك، وخادم المحاكاة الخاص بك، ووثائقك كلها في نفس المشروع، لذا فإن الاختبار في CI يتحقق من نفس API الذي صممته ووثقته. لا تقوم بربط أربع أدوات معًا.
نقاط قوة ملموسة لـ CI:
apidog runمُصمم لمسارات العمل. انسخ الأمر المُولد من لوحة CI/CD والصقه في Jenkins أو GitLab أو GitHub Actions. يمكنك الاطلاع على دليل CLI التعليمي خطوة بخطوة للحصول على شرح شامل.- الاختبار القائم على البيانات. قم بتغذية ملف CSV أو JSON باستخدام العلامة
-dوسيقوم Apidog بتكرار اختبارك مرة واحدة لكل صف. هذا يغطي الحالات ذات المعلمات التي تقوم معظم الفرق بإنشائها يدويًا في أماكن أخرى. - أدوات الإبلاغ التي تناسب أي مسار عمل. تصدر العلامة
-rمخرجاتcliوhtmlوjsonوjunit، بحيث يمكن للوحة معلومات CI الخاصة بك قراءة النتائج بشكل طبيعي ويمكن للبشر فتح تقرير HTML. - المحاكاة التي تعمل بلا واجهة رسومية أيضًا. يقوم خادم المحاكاة الخاص بـ Apidog بإنشاء استجابات من مخططك ويعمل في CI، بحيث لا تنتظر اختبارات الواجهة الأمامية والتكامل خلفية حية. للحصول على نظرة أعمق، راجع دليل محاكاة API.
- واعي بالوكيل الذكي (AI-agent). يسمح خادم MCP الخاص بـ Apidog لوكيل ذكاء اصطناعي أو بيئة تطوير متكاملة (Cursor، Claude، VS Code) بقراءة مواصفات API الخاصة بك والعمل عليها. يتم تناول ذلك في خادم Apidog MCP.
يحتوي Apidog على طبقة مجانية وتطبيق سطح مكتب من Apidog للمتابعة. إذا كنت تريد على وجه التحديد مقارنة مباشرة بين Postman CLI و Apidog بدلاً من هذه المقالة القائمة، فاقرأ مقارنة Apidog CLI و Postman CLI.
2. Newman
Newman هو أداة تشغيل المجموعات مفتوحة المصدر الأصلية لـ Postman، ولا يزال الخيار الأكثر شيوعًا للفرق المستثمرة بالفعل في Postman. يقوم بتشغيل ملف JSON لمجموعة Postman من سطر الأوامر، دون الحاجة إلى تطبيق Postman، وقد كان موجودًا لفترة طويلة بما يكفي بحيث توجد تقريبًا أي "وصفة" CI تبحث عنها.

نقاط قوة Newman الحقيقية:
- إنه مفتوح المصدر بالكامل تحت ترخيص Apache-2.0، لذا يمكنك تشغيله دون اتصال وفحص ما يفعله.
- يقرأ صادرات مجموعات Postman القياسية، لذا فإن ترحيل مجموعة موجودة هو تصدير بخطوة واحدة.
- لديه نظام بيئي عميق من أدوات الإبلاغ ومجتمع كبير، مما يعني أن العثور على الإجابات سهل.
المفاضلة: لا يزال Newman يركز على مجموعات Postman كأثر. إذا كان هدفك هو الابتعاد عن "المجموعة كمصدر للحقيقة"، فإن Newman يبقيك في هذا النموذج. ذكرت Postman أنه لا توجد خطط لإيقاف دعم Newman، لذا فإنه يظل مستقرًا. إذا كنت تزن بين أداتي التشغيل "بنكهة Postman"، فإن مقارنة Apidog CLI و Newman توضح الاختلافات.
3. Hoppscotch CLI
Hoppscotch هو عميل API مفتوح المصدر وقابل للاستضافة الذاتية، ويجلب Hoppscotch CLI (@hoppscotch/cli) نصوص الاختبار الخاصة به إلى CI. يقوم أمر hopp test بتصفح مجموعة، وتشغيل كل طلب، والتحقق من صحة الاستجابات مقابل نص الاختبار المرفق بكل منها.
حيث يتألق:
- إنه مفتوح المصدر وقابل للاستضافة الذاتية، وهو أمر مهم إذا كنت لا تستطيع إرسال أي شيء إلى سحابة بائع.
- يمكنك تشغيل الاختبارات من تصدير JSON لمجموعتك وبيئتك، أو بواسطة معرف المجموعة.
- يصدر تقارير JUnit باستخدام
--reporter-junit، بحيث تلتقط أنظمة CI النتائج بشكل نظيف.
يُعد Hoppscotch CLI مناسبًا إذا كنت مستخدمًا لـ Hoppscotch بالفعل وتعجبك تصميمه الخفيف الذي يعتمد على المتصفح أولاً. إذا كنت تتسوق في الفئة الأوسع، فإن ملخص بدائل Hoppscotch يغطي جانب الواجهة الرسومية أيضًا.
4. inso (Insomnia CLI)
inso هي أداة سطر الأوامر الخاصة بـ Kong Insomnia. تقوم بتشغيل مجموعات الاختبار التي تنشئها في Insomnia، وميزتها البارزة هي كيفية اقترانها بمزامنة Git الخاصة بـ Insomnia. عند إعداد مزامنة Git، يقرأ inso بيانات Insomnia الخاصة بك من دليل .insomnia في مستودعك، بحيث تصبح مواصفاتك ومجموعاتك ومجموعات الاختبار الخاصة بك ملفات ذات تحكم في الإصدار جنبًا إلى جنب مع رمزك.
نقاط قوة inso:
- أصلي لـ Git. تعيش الاختبارات كملفات في مستودعك، يتم الالتزام بها وتفرعها مثل بقية مكدسك.
- يقوم بتشغيل مجموعات اختبار محددة بالاسم مباشرة، على سبيل المثال
inso run test "My API Test Suite". - إنه مدعوم من قبل Kong ومشروع Insomnia مفتوح المصدر، ويتكامل مع GitHub Actions و GitLab و Jenkins.
إذا كان فريقك يصمم بالفعل في Insomnia ويريد اختبارات في التحكم في الإصدار دون وجود سحابة بائع في الحلقة، فإن inso هو خيار طبيعي. للمقارنة المركزة، راجع مقارنة Apidog CLI و inso.
5. Hurl
Hurl هو الاستثناء هنا، وبالنسبة لبعض الفرق هو الخيار الأمثل. إنها أداة سطر أوامر صغيرة تقوم بتشغيل طلبات HTTP مكتوبة بتنسيق .hurl نصي عادي. إنه ثنائي Rust مدعوم بواسطة libcurl، لذلك يبدأ بسرعة وليس لديه أي اعتماد وقت تشغيل للتثبيت. إنه مفتوح المصدر، يتم صيانته بواسطة Orange ضمن منظمة Orange-OpenSource على GitHub.

لماذا يلجأ المهندسون إليه:
- نص عادي، متحكم فيه بالإصدار. يقرأ ملف
.hurlكأمر curl مشروح. يتميز باختلافات نظيفة ويعيش في مستودعك بدون خطوة تصدير. - سريع وخفيف الاعتماديات. لا يوجد بيئة تشغيل Node، لا واجهة رسومية، لا حساب. يقوم بسلسلة الطلبات، ويلتقط القيم، ويؤكد على الرؤوس والجسم.
- صديق للـ CI حسب التصميم. نظرًا لأن الاختبارات مجرد ملفات نصية ويعيد الثنائي رموز خروج قياسية، فإن ربطه بمسار عمل أمر بسيط.
لا يحاول Hurl أن يكون منصة API كاملة. لا يوجد سطح تصميم، لا خادم وهمي، لا إنشاء توثيق. هذه هي النقطة. إذا كنت تريد أصغر شيء ممكن يؤكد أن نقاط النهاية الخاصة بك تعمل، فمن الصعب التغلب على Hurl. اقرأ وثائق Hurl الرسمية للاطلاع على التنسيق.
كيفية الاختيار
طابق الأداة مع مكان سير عمل API الخاص بك بالفعل:
- متعمق بالفعل في Postman، وتريد تشغيل دون اتصال: Newman.
- على Hoppscotch أو تستضيف ذاتيًا: Hoppscotch CLI.
- على Insomnia وأصلي لـ Git: inso.
- تريد الحد الأدنى، قائم على النص، بدون منصة: Hurl.
- تريد مكانًا واحدًا للتصميم والمحاكاة والاختبار والتوثيق، مع أداة تشغيل ترتبط بعقدك: Apidog CLI.
إذا كنت تتعامل مع API الخاص بك كمنتج بدلاً من كومة من المجموعات، فإن الخيار الأخير يتوسع بشكل أفضل. هذا الإطار يستحق القراءة في API كمنتج، ويغطي دليل أفضل ممارسات CI/CD لاختبار API كيفية ربط أي من هذه الأدوات بمسار عمل بشكل جيد.
الأسئلة الشائعة
هل يوجد بديل مجاني لـ Postman CLI؟
نعم، عدة بدائل. Newman و Hoppscotch CLI و inso و Hurl كلها مفتوحة المصدر ومجانية التشغيل. يحتوي Apidog CLI على طبقة مجانية ويقوم بتشغيل نفس أمر apidog run الذي ستستخدمه في خطة مدفوعة. لا يفرض أي منهم رسومًا عليك لكل تشغيل مسار عمل.
هل يمكنني تشغيل مجموعات Postman الحالية الخاصة بي بدون Postman CLI؟
نعم. يقرأ Newman ملف JSON لمجموعة Postman مباشرة، ويمكن لـ Apidog استيراد مجموعة Postman، وبعد ذلك يمكنك تشغيلها بلا واجهة رسومية. نغطي مسار الترحيل في كيفية تشغيل مجموعات Postman في CI بدون Newman.
ما الفرق بين Postman CLI و Newman؟
كلاهما يشغل مجموعات Postman من سطر الأوامر بحجج مماثلة. يسجل Postman CLI الدخول باستخدام مفتاح Postman API ويرسل تقارير العمليات إلى تطبيق Postman، بينما Newman هو أداة تشغيل مفتوحة المصدر مستقلة لا تبلغ إلى السحابة. ذكرت Postman أنه ليس لديها خطط لإيقاف دعم Newman.
أي بديل هو الأفضل لـ CI/CD؟
يعتمد ذلك على مكدسك. للحصول على منصة واحدة تتعامل مع التصميم والمحاكاة والاختبار والوثائق مع أداة تشغيل جاهزة لـ CI، فإن Apidog CLI هو الخيار الموصى به. لأداة تشغيل قائمة على النص الخالص بدون منصة مرفقة، Hurl ممتاز. Newman و Hoppscotch CLI و inso قوية عندما تكون مستخدمًا لـ Postman أو Hoppscotch أو Insomnia على التوالي.
الخلاصة
يعمل Postman CLI، لكن نموذج الارتباط السحابي والترخيص الخاص به يدفع الكثير من الفرق للبحث في مكان آخر. يغطي كل من Newman و Hoppscotch CLI و inso و Hurl حالة استخدام واضحة. إذا كنت تريد أداة تشغيل ترتبط بمصدر واحد للحقيقة لدورة حياة API بأكملها، فإن Apidog CLI هو الأداة التي يجب تجربتها. قم بتنزيل Apidog وقم بتشغيل اختبارك الأول من سطر الأوامر، أو اقرأ المزيد عن المنصة على Apidog.
