QA Lab
Don't take my word for it. Watch the tests run.
Real Playwright tests against Lawak Store, my demo shop: step screenshots, video, and a report, recorded on every run.
Sample run (recorded locally)
Latest run · 2026-10-12 · local run
lawak-store / regression
40/41 passedDuration 48.8s
- TC-AUTH-001TC-AUTH-001Sign in with the demo admin account0.8s
- TC-AUTH-002TC-AUTH-002Wrong password shows an error0.7s
- TC-AUTH-003TC-AUTH-003Invalid email format is rejected0.8s
- TC-AUTH-004TC-AUTH-004Disabled account cannot sign in0.7s
- TC-AUTH-005TC-AUTH-005Register a new customer account1.1s
- TC-AUTH-006TC-AUTH-006Register with an existing email is rejected0.9s
- TC-AUTH-007TC-AUTH-007Weak password is rejected1.0s
- TC-AUTH-008TC-AUTH-008Sign out ends the session1.2s
- TC-AUTH-009TC-AUTH-009A protected page asks for sign in, then returns to it0.8s
- TC-CAT-001TC-CAT-001Shop lists all active products and hides drafts0.8s
- TC-CAT-002TC-CAT-002Search finds a product by name0.7s
- TC-CAT-003TC-CAT-003Category filter shows only that category0.7s
- TC-CAT-004TC-CAT-004Sort by price from low to high0.8s
- TC-CAT-005TC-CAT-005Search with no result shows an empty state0.6s
- TC-CAT-006TC-CAT-006Product detail shows the price and stock0.7s
- TC-CAT-007TC-CAT-007Out-of-stock product cannot be added to the cart0.7s
- TC-CART-001TC-CART-001Add a product to the cart0.9s
- TC-CART-002TC-CART-002Changing the quantity updates the totals0.9s
- TC-CART-003TC-CART-003Shipping is free from Rp 300.0000.7s
- TC-CART-004TC-CART-004Removing the last item shows an empty cart0.8s
- TC-CART-005TC-CART-005Quantity limit of 10 is enforced0.9s
- TC-CHK-001TC-CHK-001Checkout with the test card creates an order1.2s
- TC-CHK-002TC-CHK-002Empty required fields are reported1.0s
- TC-CHK-003TC-CHK-003Declined card shows a payment error1.2s
- TC-CHK-004TC-CHK-004Invalid card number is rejected1.2s
- TC-CHK-005TC-CHK-005Expired card is rejected1.3s
- TC-CHK-006TC-CHK-006Postal code must have exactly 5 digits8.6s
- TC-ORD-001TC-ORD-001A new order shows in My orders2.0s
- TC-ORD-002TC-ORD-002A customer cannot open another customer's order1.0s
- TC-PRD-001TC-PRD-001Admin creates a product1.5s
- TC-PRD-002TC-PRD-002Admin edits a product price1.0s
- TC-PRD-003TC-PRD-003Admin deletes a product0.9s
- TC-PRD-004TC-PRD-004Product form rejects invalid data1.1s
- TC-PRD-005TC-PRD-005A draft product is hidden from the shop1.2s
- TC-AOR-001TC-AOR-001A new customer order shows in admin Orders1.8s
- TC-AOR-002TC-AOR-002Admin moves an order from Paid to Processing1.1s
- TC-AOR-003TC-AOR-003Cancelling an order puts the stock back1.4s
- TC-USR-001TC-USR-001A customer cannot open admin pages1.0s
- TC-USR-002TC-USR-002A disabled customer cannot sign in1.4s
- TC-USR-003TC-USR-003Admin cannot change their own role or status0.8s
- TC-DSH-001TC-DSH-001Admin dashboard shows the KPIs0.8s
One failure is expected: DEF-001 is planted on purpose, and TC-CHK-006 catches it.
Recorded steps01 / 05

TC-AUTH-001: sign in with the demo admin account
How it works
- 01
You press Run
Turnstile and a rate limit protect the button. One run at a time.
- 02
GitHub Actions starts
A Linux VM starts the Lawak Store demo server and runs the Playwright UI suite in Chromium.
- 03
Results stream back
Steps, logs, screenshots, and video are stored in Cloudflare D1 and R2.
- 04
You watch it live
Every step appears here within seconds, and you can replay any run later.