رفتن به محتوای اصلی
فهرست مستندات
تست برنامه‌ها

اتصال test suite به Application Inventory در Postman

به‌روزرسانی ۳ دقیقه مطالعه Postman

فهرست مطالب
  1. Step 1: لینک کردن application به workspace
  2. Step 2: نصب Postman CLI
  3. Step 3: افزودن API testها به workspace
  4. Step 4: راه‌اندازی capture plugin
  5. روش پیشنهادی: فعال کردن capture در Playwright config
  6. روش جایگزین: فعال کردن capture در test fileها
  7. Step 5: initialize و اجرای application testها
  8. فیلتر کردن traffic نامرتبط
  9. اجرای testها
  10. ساخت collection از traffic captureشده

Application Inventory با test suiteهای UI موجود شما یکپارچه می‌شود تا تعاملات API را validate کند و dependencyها را به صورت خودکار کشف کند. این راهنما مراحل ساخت اولین application و اجرای testها با network capture را توضیح می‌دهد.

اگر workspace جدید را وصل می‌کنید، فرایند setup هنگام link کردن repository به صورت guided انجام می‌شود. برای workspaceهای موجود، باید از Application Inventory یک application بسازید و با postman app init آن را initialize کنید.

Step ۱: لینک کردن application به workspace

برای این مرحله باید از برنامه دسکتاپ Postman استفاده کنید:

  1. وارد Postman workspace شوید.
  2. اگر repository هنوز وصل نیست، از sidebar مسیر Files > Open folder را انتخاب کنید و Git project را به workspace وصل کنید.
  3. فرایند link کردن repository را کامل کنید.

اگر Postman هنگام link کردن repository تست‌های Playwright را تشخیص دهد، tag مربوط به application را برای Application Inventory اضافه می‌کند.

Step ۲: نصب Postman CLI

اگر Postman CLI را ندارید، آخرین نسخه را نصب کنید:

npm install -D postman-cli

Step ۳: افزودن API testها به workspace

اگر Postman Collectionهایی دارید که contractهای API شما را نشان می‌دهند، آن‌ها را به workspace اضافه کنید. این collectionها بعداً برای validate کردن API callهای captureشده استفاده می‌شوند.

Step ۴: راه‌اندازی capture plugin

Postman Playwright plugin را نصب کنید:

npm install -D postman-playwright

روش پیشنهادی: فعال کردن capture در Playwright config

در فایل پیکربندی Playwright از withPostman استفاده کنید:

// playwright.config.ts
import { defineConfig } from '@playwright/test';
import { withPostman } from 'postman-playwright';

export default withPostman(defineConfig({
  // Your existing Playwright configuration
}));

این روش JSON reporter و trace recording داخلی Playwright را فعال می‌کند. Postman CLI فایل‌هایی مثل playwright-report.json و trace.zip را می‌خواند تا network traffic را تحلیل کند. مزیت آن پوشش گسترده‌تر است، اما ممکن است اجرای testها کمی طولانی‌تر شود.

روش جایگزین: فعال کردن capture در test fileها

می‌توانید object تست Playwright را با attachNetworkCapture wrap کنید:

import { test as baseTest, expect } from '@playwright/test';
import { attachNetworkCapture } from 'postman-playwright';

const test = attachNetworkCapture(baseTest);

test('has title', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await expect(page).toHaveTitle(/Playwright/);
});

این روش overhead کمتری دارد، اما باید test fileها را تغییر دهید یا یک wrapper مشترک بسازید. همچنین فقط traffic مربوط به object داخلی page را capture می‌کند و pageهایی که دستی با browser.newContext() و context.newPage() ساخته شوند capture نمی‌شوند.

test('creates a page manually', async ({ browser }) => {
  const context = await browser.newContext({
    recordVideo: { dir: './videos/' },
  });

  const page = await context.newPage();
});

Step ۵: initialize و اجرای application testها

برای initialize کردن پروژه:

postman app init

این command ساختار فایل‌های پروژه را تحلیل می‌کند، امکان انتخاب test command و collection/environment را می‌دهد، فایل postman.config.cjs می‌سازد و targetها و filter ruleهای capture را تعریف می‌کند.

فیلتر کردن traffic نامرتبط

برای حذف URL، method یا headerهای نامرتبط، بخش filters را در postman.config.cjs تغییر دهید:

filters: {
  urlPatterns: ['fonts.googleapis.com', 'localhost:3007', 'fonts.gstatic.com'],
  methods: [],
  headers: {},
},

اجرای testها

برای اجرای UI testها با Postman CLI:

postman app test

برای تست local و ارسال نتیجه‌ها به Application Inventory از گزینه زیر استفاده کنید:

postman app test --report-events

Targetها از postman.config.cjs خوانده می‌شوند، اما می‌توانید در زمان اجرا آن‌ها را با --target، --target-environment و --target-collection override کنید.

ساخت collection از traffic captureشده

اگر API test آماده ندارید، می‌توانید از traffic واقعی UI testها collection اولیه بسازید:

postman app test --capture-only

این workflow traffic را capture می‌کند، draft Postman Collection می‌سازد، با کمک AI assertionهای اولیه را پیشنهاد می‌دهد و به شما اجازه می‌دهد testها را اصلاح و در runهای بعدی استفاده کنید.

منبع آموزشی: Postman Docs، بازنویسی و ساده‌سازی‌شده برای کاربران فارسی‌زبان.

ایستگاه بعدی شما

TestRail را همین حالا در محیط دمو ببینید.

محیط تست آماده

دسترسی به دمو TestRail

قبل از ورود، مشخصات زیر را در صفحه ورود محیط دمو وارد کنید.

آدرس دمو

https://demo.testrail.ir

ایمیل ورود

demo@testrail.ir

رمز عبور

demo_user