Automation
Playwright run configuration
Configure how approved cases will run. Execution is unavailable until secure access, persistence and an isolated runner are connected.
Target & browsers
Browsers
Execution & evidence
Pre-flight checks
- Target URL is public and well-formed
- At least one browser selected
- Per-test timeout ≤ 120s
- Workers ≤ 4
- Retries ≤ 3
- Production targets: no retries (read-only smoke)
Scripts
9 automated cases
import { test, expect } from "@playwright/test";
// TC-1001 · Sign in with valid credentials
// Generated SKELETON — review locators and assertions before use.
test("Sign in with valid credentials", async ({ page }) => {
await page.goto("https://staging.shop.northwind-demo.example");
// 1. Open /login
// expect: Login form is visible
// TODO: replace with real locator + assertion
// 2. Enter valid email and password
// expect: Fields accept input
// TODO: replace with real locator + assertion
// 3. Click Sign in
// expect: Redirected to /account; greeting shows user name
// TODO: replace with real locator + assertion
});
Execution status & evidence
Evidence appears in Runs & Results only after the runner returns a validated result
Screenshots
only-on-failure
Trace (.zip)
on-first-retry
Console & network log
always
Worker status:Checking runner…
Execution unavailable. Only cases marked Ready whose steps all use allowlisted instructions are sent (0 now). The runner accepts only goto/click/fill/expectVisible/expectText/expectURL — never scripts — and only targets in QA_ALLOWED_TARGET_ORIGINS. It pins DNS to validated public IPs, blocks every other host, re-checks redirects and enforces time/size limits. Results and approvals are session-only and reset on reload.