Bỏ qua để đến nội dung

Vendor testing and screenshots index

Nội dung này hiện chưa có sẵn bằng ngôn ngữ của bạn.

This page defines and tracks the required quality gate for vendor-web screen work:

  • Unit tests for screen logic
  • E2E tests for user flows
  • Docs screenshots for documented screens

When adding or changing a vendor screen, update this index in the same PR.


For every user-facing vendor screen:

  1. Unit test set (component/hook/schema/service adapter logic in apps/vendor-web/src/**).
  2. E2E test set (Playwright flow in apps/vendor-web/e2e/**).
  3. Screenshot for docs (PNG under apps/docs/public/screenshots/vendor/, captured by Playwright docs screenshot specs).

If one item is missing, the screen is not documentation-complete.


  • E2E specs:
    • apps/vendor-web/e2e/login.spec.ts
    • apps/vendor-web/e2e/docs-screenshots.spec.ts
    • apps/vendor-web/e2e/docs-cashier-screenshots.spec.tsCashier help center PNGs under screenshots/cashier/
    • apps/vendor-web/e2e/pos-place-order-surfaces.spec.tssource contract for shared usePosPlaceOrder on dashboard POS, POS workspace sale, and create order (see POS guidePlace order — shared client hook).
  • Vendor-web unit specs (examples; full set under apps/vendor-web/src/**/*.spec.ts):
    • apps/vendor-web/src/lib/pos-place-order-mutation-handlers.spec.ts — stock highlight helpers used by usePosPlaceOrder.
    • apps/vendor-web/src/lib/pos-order-receipt-finalize.spec.ts — post-checkout runVendorPosOrderReceiptFinalize (fetch, TanStack invalidations, fallback snapshot, silent print). See POS guideReceipt after checkout — shared finalize helper.
    • apps/vendor-web/src/hooks/use-pos-place-order.contract.spec.ts — asserts the three checkout surfaces still wire the hook.
  • Vendor docs screenshots:
    • apps/docs/public/screenshots/vendor/vendor-login-sign-in.png
Screen / flowUnit tests (vendor-web)E2E testsDocs screenshotStatus
/login (sign-in)✅ (login.spec.ts)✅ (vendor-login-sign-in.png)Partial (missing unit set)
/forgot-passwordBacklog
/verify-otpBacklog
/reset-passwordBacklog
/dashboard (home)Backlog
/pos✅ (POS libs + use-pos-place-order.contract)✅ (pos-place-order-surfaces.spec.ts contract)Partial
Cashier /point-of-sale/sale✅ (POS libs)⛔ (flow)⛔ (docs-cashier-screenshots.spec.ts)Partial
/point-of-sale/orders, returns, report, settings⛔ (batch in cashier docs spec)Backlog
Core dashboard screens (orders, products, inventory, finance, customers, discounts, settings)Backlog

Legend: ✅ complete, ⛔ missing.


When implementing a new screen or changing behavior:

  1. Add/update unit specs under src/**.
  2. Add/update Playwright E2E under e2e/**.
  3. Capture/update docs screenshot via docs-screenshots.spec.ts or docs-cashier-screenshots.spec.ts (Cashier help).
  4. Update the corresponding row in this index.
  5. Rebuild docs: cd apps/docs && npm run build.