Loading...
Loading...
Use when writing, changing or debugging a Bagisto end-to-end test — Playwright specs, page objects, ACL role coverage, fixtures, or a failing E2E run in CI. Trigger phrases include "playwright", "e2e", "end to end", "spec.ts", "page object", "browser test", "flaky test", "shard".
npx skill4agent add bagisto/agent-skills bagisto-playwright-testingpackages/Webkul/{Admin,Shop}/tests/e2e-pw/
├── playwright.config.ts # testDir ./tests, workers 1, retries 0
├── setup.ts # adminPage / shopPage fixtures
├── pages/ # page objects (BasePage subclasses)
├── tests/ # *.spec.ts, grouped by admin menu section
├── utils/ # faker.ts, admin.ts (login)
└── data/ # fixture files for uploadscd packages/Webkul/Admin
npm install && npx playwright install --with-deps chromium
npx playwright test --config=tests/e2e-pw/playwright.config.ts
npx playwright test --config=tests/e2e-pw/playwright.config.ts -g "create a category".envBASE_URLplaywright.config.ts.envAPP_URLbaseURL: `${process.env.APP_URL}/`.replace(/\/+$/, "/")BASE_URLBASE_URLAPP_URL.envsedBASE_URL=…APP_URL| File | Load when |
|---|---|
| authoring.md | Writing a new spec or page object — structure, fixtures, ACL tests, naming |
| troubleshooting.md | A test fails, hangs, or passes when it should not |
workers: 1retries: 0fullyParallel: false--shard=i/10.state/admin-auth.jsonadminPageimport { test } from "../../setup";
import { CategoryPage } from "../../pages/admin/catalog/CategoryPage";
test.describe("category management", () => {
test("should create a category", async ({ adminPage }) => {
const categoryPage = new CategoryPage(adminPage);
await categoryPage.createCategory();
});
});meta.totalgetByText("Delete")getByRole("button", { name: "Static Content" })