بوستمان CLI ضد نيومان: أي عداء سطر أوامر يجب أن تستخدم؟

INEZA Felin-Michel

INEZA Felin-Michel

22 مايو 2026

بوستمان CLI ضد نيومان: أي عداء سطر أوامر يجب أن تستخدم؟

Apidog للمؤسسات

نشر محلي

SSO & RBAC

متوافق مع SOC 2

استكشاف Apidog Enterprise

لسنوات، كان تشغيل مجموعات Postman خارج تطبيق سطح المكتب يعني أداة واحدة: Newman. ثم أطلقت Postman أداة سطر الأوامر الرسمية الخاصة بها، وهي Postman CLI، والآن هناك طريقتان للقيام بنفس الشيء تقريبًا. كلاهما يشغل المجموعات بدون واجهة المستخدم الرسومية (GUI)، وكلاهما يتناسب مع مسارات CI/CD، وكلاهما ينفذ نفس نصوص الاختبار. فلماذا توجد أداتان، وأيهما ينتمي إلى مسار عملك؟

النسخة المختصرة: Newman هو المشغل مفتوح المصدر والخالي من الحاجة إلى حساب، والذي كان المعيار المجتمعي منذ الأيام الأولى. Postman CLI هو الأداة الأحدث المرتبطة بالحساب والتي تربط عمليات التشغيل بسحابة Postman وتقدم التقارير عن النتائج هناك. يعتمد الاختيار الصحيح على ما إذا كنت تريد تخزين النتائج في منصة Postman أو تفضل مشغلًا لا يحتاج إلا إلى ملف مجموعة. تقارن هذه المقالة بينهما بصدق حتى تتمكن من اتخاذ قرارك.

ما هو نيومان

نيومان هو مشغل مجموعات Postman الأصلي عبر سطر الأوامر. إنه مفتوح المصدر، ويتم توزيعه كحزمة npm، ومجاني تمامًا. يقوم بتشغيل ملفات المجموعات المصدرة من Postman، وينفذ كل طلب وكل تأكيد pm.test، ويبلغ عن النتيجة من خلال رمز الخروج الخاص به.

السمة المميزة لنيومان هي الاستقلالية. لا يتطلب حساب Postman، أو مفتاح API، أو اتصال شبكة بخوادم Postman. تعطيه ملف مجموعة JSON ويقوم بتشغيلها. وهذا يجعله قابلاً للتنبؤ وسهل الفهم في البيئات المقيدة.

npm install -g newman
newman run checkout-api.postman_collection.json \
  --environment staging.postman_environment.json

نيومان خفيف الوزن وقابل للتوسيع أيضًا. يأتي مع أدوات إبلاغ CLI و JUnit، ويحافظ المجتمع على أدوات إبلاغ إضافية مثل newman-reporter-htmlextra للحصول على مخرجات HTML غنية. ولأنه حزمة Node.js، يمكنك أيضًا استدعاؤه برمجيًا من خلال سكريبت. يغطي دليلنا حول الفرق بين Newman و Postman كيفية ارتباطه بتطبيق سطح المكتب.

ما هو Postman CLI

Postman CLI هي أداة سطر الأوامر الرسمية التي طورتها Postman وتوصي بها الآن. إنها ثنائي واحد تقوم بتثبيته بسكريبت، وليست حزمة npm، وهي مرتبطة بحساب Postman الخاص بك عبر مفتاح API.

# install (example for macOS/Linux)
curl -o- "https://dl-cli.pstmn.io/install/osx_64.sh" | sh

# authenticate, then run
postman login --with-api-key YOUR_API_KEY
postman collection run checkout-api

الفرق الرئيسي هو الارتباط السحابي. عندما تقوم بتشغيل مجموعة باستخدام Postman CLI، يمكنها سحب المجموعة مباشرة من مساحة عمل Postman الخاصة بك بواسطة المعرف، وتدفع نتائج التشغيل مرة أخرى إلى منصة Postman، حيث تظهر في سجل مساحة العمل ولوحات المعلومات. نقطة البيع الكبيرة هي حوكمة واجهات برمجة التطبيقات (API) وفحوصات الأمان: يمكن لـ Postman CLI تشغيل تدقيق (linting) ضد تعريفات واجهة برمجة التطبيقات الخاصة بك أثناء مسار العمل، مما يكشف عن انتهاكات المخطط والقواعد كجزء من عملية البناء.

لذا، Postman CLI ليس مشغل مجموعات بحتًا بقدر ما هو وكيل مسار عمل لمنصة Postman. إذا كان فريقك يعمل داخل سحابة Postman ويريد سجل تشغيل وحوكمة مركزية هناك، فإن هذا التكامل هو السبب لاختياره.

مقارنة جنبًا إلى جنب

الجانب Postman CLI Newman
المصدر مغلق المصدر، أداة Postman الرسمية مفتوح المصدر
التثبيت سكريبت تثبيت، ثنائي واحد حزمة npm
حساب Postman مطلوب (تسجيل الدخول بمفتاح API) غير مطلوب
مصدر المجموعة يسحب من سحابة Postman بواسطة المعرف، أو ملف محلي ملف JSON محلي
نتائج التشغيل يتم الإبلاغ عنها إلى منصة Postman مخرجات الطرفية وملفات الإبلاغ
حوكمة/تدقيق API مدمجة غير متضمنة
أدوات الإبلاغ محدودة، النتائج موجودة في Postman CLI، JUnit، بالإضافة إلى أدوات إبلاغ HTML مجتمعية
الاستخدام دون اتصال محدود، مصمم حول السحابة يعمل بالكامل دون اتصال بمجرد وجود الملف محليًا
النضج أحدث معيار مجتمعي راسخ منذ فترة طويلة
التكلفة مجاني، ولكنه مرتبط بحدود خطة Postman مجاني، لا يتطلب حساب

المحور الحاسم هو سحابة Postman. تم بناء Postman CLI لتغذية النتائج والحوكمة في منصة Postman. بينما تم بناء Newman لتشغيل ملف وتقديم تقرير محليًا، بدون أي اعتماد على خوادم Postman.

كيف تتناسبان مع CI/CD

تعمل كلتا الأداتين مع أي مزود CI، بما في ذلك Jenkins و GitHub Actions و GitLab CI و CircleCI. تختلف الآليات.

مع Newman، تقوم بتثبيت ملفات JSON الخاصة بالمجموعة والبيئة في مستودعك، وتثبيت Newman في المهمة، وتشغيله، وتسمح لرمز الخروج غير الصفري بإفشال البناء عند فشل الاختبار. كل شيء مستقل ومحتوى ذاتيًا في المستودع ومسار العمل. تُظهر أدلتنا حول أتمتة اختبارات API في CI/CD و أتمتة اختبارات API باستخدام GitHub Actions هذا النمط.

مع Postman CLI، تقوم بتخزين مفتاح API الخاص بـ Postman كسر في مزود CI، وتصادق، وتشغل المجموعة بواسطة معرفها. يتم سحب المجموعة من سحابة Postman بدلاً من المستودع، وتعود النتائج إلى مساحة العمل. هذا يحافظ على مصدر الحقيقة في Postman، وهو ما يفضله بعض الفرق ويجده آخرون مقيدًا.

فرق عملي: Newman يحافظ على إصدار الاختبارات مع التعليمات البرمجية الخاصة بك، حيث يوجد ملف JSON الخاص بالمجموعة في المستودع. Postman CLI يحافظ على إصدار الاختبارات في منصة Postman، حيث يسحبها بواسطة المعرف. قرر أي مصدر للحقيقة يريده فريقك قبل الاختيار.

زاوية الحوكمة

الميزة الوحيدة التي تفصل بوضوح بين الأداتين هي حوكمة واجهات برمجة التطبيقات (API). يمكن لـ Postman CLI تشغيل فحص بنمط postman api lint ضد تعريف واجهة برمجة تطبيقات مخزن في مساحة عمل Postman الخاصة بك، وتقييمه مقابل قواعد التسمية والأمان واكتمال المخطط والاتساق. عندما يتم تشغيل هذا الفحص داخل مسار العمل، فإن التعريف الذي ينتهك قاعدة ما يفشل البناء قبل دمج التغيير.

لا يوجد لنيومان ما يعادله. فهو يشغل المجموعات ويبلغ عن نتائج الاختبار، وهذا هو نطاق وظيفته. إذا كانت مؤسستك تهتم بفرض معايير تصميم واجهة برمجة التطبيقات تلقائيًا، فإن هذه القدرة موجودة فقط في Postman CLI، وهي سبب حقيقي لاختياره. إذا كنت لا تفرض قواعد التصميم في مسار العمل، فإن هذه الميزة لا صلة لها بالموضوع وتفوز بساطة نيومان.

من الجدير بالذكر أن نكون صادقين بشأن هذا الأمر لأنه يعيد صياغة المقارنة. Postman CLI ليس مجرد "نيومان، ولكنه أحدث". إنه نوع مختلف من الأدوات: وكيل مسار عمل لمنصة Postman يتضمن مصادفةً مشغل مجموعات. أما نيومان، فهو مشغل مجموعات فقط. بمجرد أن ترى الأمر بهذه الطريقة، يصبح الاختيار أقل حول الميزات وأكثر حول ما إذا كنت تريد ربط اختباراتك بمنصة Postman على الإطلاق.

اعتبارات الترحيل

تتساءل الفرق التي تستخدم Newman بالفعل أحيانًا ما إذا كان ينبغي عليها التبديل إلى Postman CLI. نادرًا ما يكون هناك سبب قوي لذلك. لا يزال Newman يتم صيانته، ولا يزال مجانيًا، ولا يزال يعمل مع كل مزود CI. يعني التبديل إضافة مفتاح API كسر في CI، وتغيير كيفية استيراد المجموعات، وقبول الاعتماد على سحابة Postman. ما لم تكن تريد على وجه التحديد سجل تشغيل مركزيًا أو فحوصات حوكمة، فإن تكاليف الترحيل ستفوق العوائد.

تواجه الفرق التي تبدأ من جديد خيارًا أكثر إثارة للاهتمام. إذا كان الفريق ملتزمًا بـ Postman كأداته الأساسية ويدفع مقابل خطة، فإن Postman CLI يحافظ على كل شيء في نظام بيئي واحد وهو الخيار الطبيعي. إذا كان الفريق يريد المرونة، والاختبارات ذات الإصدارات المخزنة في المستودع، والتحرر من سحابة بائع واحد، فإن Newman، أو أداة غير Postman تمامًا، تكون أكثر منطقية. لا توجد إجابة صحيحة عالمية؛ هناك فقط الإجابة التي تتناسب مع كيفية عمل فريقك بالفعل.

أيهما يجب أن تختار

اختر Newman إذا كنت تريد مشغلًا لا يعتمد على حساب، إذا كنت تريد اختبارات ذات إصدارات في مستودعك، إذا كنت بحاجة إلى تقارير HTML غنية عبر أدوات الإبلاغ المجتمعية، أو إذا كنت تعمل في بيئات مقيدة حيث لا يُسمح بالاتصال بسحابة Postman. استقلالية Newman ونضجه يجعلان منه الخيار الافتراضي الآمن لمعظم مسارات العمل.

اختر Postman CLI إذا كان فريقك يعمل داخل منصة Postman، إذا كنت تريد سجل التشغيل ولوحات المعلومات مركزية هناك، أو إذا كانت حوكمة واجهة برمجة التطبيقات (API) وتدقيق التعريف في مسار العمل قيّمة بالنسبة لك. إن تكامله المحكم مع السحابة يمثل ميزة حقيقية للفرق التي تركز على Postman.

إذا كنت تدرس هذا القرار، فمن الجدير طرح سؤال عما إذا كنت تريد أن تكون مرتبطًا بنظام Postman البيئي على الإطلاق. للاطلاع على مقاربات أخرى، راجع دليلنا حول تشغيل مجموعات Postman في CI بدون Newman ونظرتنا الأوسع حول اختبار API بدون Postman.

بديل أداة واحدة: Apidog

يفترض كل من Postman CLI و Newman أنك قمت بتأليف اختباراتك في Postman. Apidog يلغي هذا الانقسام. يمكنك تصميم واجهات برمجة التطبيقات (APIs)، وتصحيح الأخطاء في الطلبات، وبناء سيناريوهات اختبار آلية باستخدام تأكيدات بصرية في تطبيق واحد، ثم تشغيل تلك السيناريوهات في CI/CD باستخدام مشغل سطر الأوامر المدمج. لا توجد خطوة تصدير ولا حزمة مشغل منفصلة، لأن تعريفات الاختبار ومحرك التنفيذ هما نفس المنتج.

يتضمن Apidog أيضًا تصميم واجهة برمجة التطبيقات (API)، وخوادم وهمية، واختبار الأداء، بحيث يمكن للفريق تغطية دورة حياة واجهة برمجة التطبيقات الكاملة دون تجميع الأدوات معًا. يمكنك تنزيل Apidog واستخدام ميزات الاختبار الخاصة به مجانًا، بما في ذلك مشغل CLI لمسارات العمل.

أسئلة مكررة

هل يحل Postman CLI محل Newman؟

تعتبر Postman أداة Postman CLI كأداة سطر الأوامر الموصى بها رسميًا، ولكن Newman لا يزال يتم صيانته ويستخدم على نطاق واسع. يبقى Newman الخيار الأفضل عندما تريد مشغلًا لا يتطلب حسابًا، وذو إصدارات مخزنة في المستودع. من المرجح أن تتعايش الأداتان لبعض الوقت، لذلك لا توجد حاجة ملحة للترحيل.

هل يتطلب Postman CLI حساب Postman؟

نعم. يتطلب Postman CLI المصادقة باستخدام مفتاح API الخاص بـ Postman وهو مصمم لربط عمليات التشغيل مرة أخرى بمساحة عمل Postman الخاصة بك. على النقيض، لا يحتاج Newman إلى حساب ويعمل فقط من ملف مجموعة محلي.

ما هي الأداة التي تقدم تقارير أفضل؟

يتمتع Newman بمرونة أكبر في الإبلاغ من خلال أدوات الإبلاغ المجتمعية، وخاصة newman-reporter-htmlextra لإخراج HTML مفصل و JUnit XML للوحات معلومات CI. بينما يقوم Postman CLI بالإبلاغ عن النتائج مباشرة إلى منصة Postman نفسها، وهو أمر مريح إذا كان فريقك يعمل هناك ولكنه أقل مرونة لملفات التقارير المستقلة.

هل يمكن لـ Postman CLI تشغيل ملف مجموعة محلي؟

يمكن لـ Postman CLI تشغيل المجموعات من الملفات المحلية، ولكنه مصمم لسحب المجموعات من سحابة Postman بواسطة المعرف والإبلاغ عن النتائج. إذا كنت تريد أداة تتعامل مع ملف JSON محلي كمصدر للحقيقة بدون تدخل سحابي، فإن Newman يناسب هذا النموذج بشكل طبيعي أكثر.

أيهما أسرع في CI؟

بالنسبة لتنفيذ المجموعات البحت، يكون الفرق صغيرًا ويعتمد على حجم المجموعة وظروف الشبكة. يتمتع Newman ببصمة أصغر ولا يتطلب رحلات ذهابًا وإيابًا إلى السحابة. يضيف Postman CLI أعباء المصادقة ومزامنة النتائج مع المنصة. بالنسبة لمعظم مسارات العمل، اختر بناءً على ملاءمة سير العمل بدلاً من السرعة الخام.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات