با گزینههای خط فرمان Newman میتوانید اجرای Collection را دقیقتر کنترل کنید؛ از انتخاب فایلهای environment و global گرفته تا timeout، SSL، reporterها و کد خروجی مناسب برای CI/CD.
گزینهها بعد از مسیر فایل یا URL Collection در دستور newman run قرار میگیرند:
newman run my-collection.json [options]
برای دیدن فهرست گزینههای موجود، این دستور را اجرا کنید:
newman run -h
گزینههای پایه #
-h, --help: نمایش راهنمای استفاده.-v, --version: نمایش نسخه Newman.
گزینههای آمادهسازی اجرا #
-e, --environment [file|URL]: مسیر فایل یا URL متغیرهای environment.-g, --globals [file|URL]: مسیر فایل یا URL متغیرهای global.-d, --iteration-data [file]: فایل داده JSON یا CSV برای اجرای iterationها.-n, --iteration-count [number]: تعداد دفعات اجرای Collection؛ معمولا همراه با فایل داده استفاده میشود.--folder [folderName]: اجرای فقط یک folder مشخص از Collection. برای چند folder میتوانید این گزینه را چند بار تکرار کنید.--working-dir [path]: مسیر working directory برای خواندن فایلهای نسبی.--no-insecure-file-read: جلوگیری از خواندن فایلهای خارج از working directory.--export-environment [path]: ذخیره environment نهایی در پایان اجرا.--export-globals [path]: ذخیره global variables نهایی در پایان اجرا.--export-collection [path]: ذخیره Collection نهایی در پایان اجرا.--postman-api-key [api-key]: کلید Postman API برای بارگذاری resourceها از طریق Postman API.
گزینههای درخواست #
--delay-request [number]: فاصله بین درخواستها بر حسب میلیثانیه.--timeout [number]: حداکثر زمان کل اجرای Collection بر حسب میلیثانیه.--timeout-request [number]: حداکثر زمان انتظار برای پاسخ هر درخواست.--timeout-script [number]: حداکثر زمان اجرای اسکریپتها.
گزینههای SSL #
--ssl-client-cert [path]: مسیر certificate عمومی کلاینت برای درخواستهای احراز هویتشده.--ssl-client-key [path]: مسیر کلید خصوصی کلاینت.--ssl-client-passphrase [passphrase]: passphrase محافظت از کلید خصوصی.--ssl-client-cert-list [path]: فایل JSON تنظیمات چند certificate برای URLها یا hostnameهای مختلف. این گزینه نسبت به--ssl-client-cert،--ssl-client-keyو--ssl-client-passphraseاولویت دارد.--ssl-extra-ca-certs [path]: فایل PEM شامل CAهای مورد اعتماد، زمانی که نمیخواهید از--insecureاستفاده کنید.
گزینههای خروجی #
--color [value]: کنترل رنگ خروجی CLI؛ مقدارهای رایجon،offوautoهستند.--verbose: نمایش اطلاعات جزئیتر از اجرای Collection و درخواستها.--silent: جلوگیری از نمایش خروجی CLI.-x, --suppress-exit-code: ادامه دادن اجرا حتی بعد از شکست تست و خروج باcode=0.--disable-unicode: جایگزین کردن نمادهای Unicode با متن ساده.-r [reporter-name], --reporters [reporter-name]: تولید گزارش اجرا. مقدارهای رایج شاملcli،json،junit،progressوemojitrainهستند. برای چند reporter از فرمت-r cli,jsonاستفاده کنید.
گزینههای پیکربندی بیشتر #
--bail [optionalModifiers]: توقف اجرا هنگام شکست test script. modifierهایfolderوfailureرفتار توقف را دقیقتر میکنند.-k, --insecure: غیرفعال کردن بررسی SSL و اجازه دادن به certificateهای self-signed.--ignore-redirects: دنبال نکردن خودکار پاسخهای redirect از خانواده3XX.--cookie-jar [path]: مسیر فایل JSON Cookie Jar برای خواندن cookieها.--export-cookie-jar [path]: ذخیره Cookie Jar نهایی در پایان اجرا.--global-var "name=value": تعریف global variable از خط فرمان. میتوانید این گزینه را چند بار تکرار کنید.--env-var "name=value": تعریف environment variable از خط فرمان. این گزینه هم قابل تکرار است.
کد خروجی Newman #
اگر اجرا بدون exception تمام شود، Newman به صورت پیشفرض status code برابر 0 برمیگرداند. در CI/CD میتوانید از این کد برای pass یا fail کردن build استفاده کنید. برای متوقف کردن اجرا بعد از خطای تست، از --bail استفاده کنید:
newman run my-collection.json -e dev-environment.json --bail
نمونه فایل داده #
برای استفاده از دادههای متفاوت در هر iteration، فایل JSON یا CSV را با گزینه -d معرفی کنید. نمونه JSON:
[
{
"url": "http://127.0.0.1:5000",
"user_id": "1",
"id": "1",
"token_id": "123123"
},
{
"url": "http://postman-echo.com",
"user_id": "2",
"id": "2",
"token_id": "899899"
}
]
اجرای Collection با فایل داده:
newman run my-collection.json -d data-file.json
نمونه CSV:
url, user_id, id, token_id
http://127.0.0.1:5000, 1, 1, 123123123
http://postman-echo.com, 2, 2, 899899
منبع آموزشی: Postman Docs، بازنویسی و سادهسازیشده برای کاربران فارسیزبان.

