Browser Qa

affaan-m/ECC/skills/browser-qa

作者 affaan-mef648e01899ba3e8dc6371642deaaf64b4477775无许可证275K 个星标收录于 2026年10月9日更新于 2026年10月9日仓库4天前更新

Run automated post-deploy UI verification with a browser automation MCP (claude-in-chrome, Playwright, or Puppeteer): console-error and Core Web Vitals smoke checks, form and auth-flow interaction tests, screenshot visual regression across three breakpoints, and axe-core accessibility audits ending in a SHIP / DO-NOT-SHIP verdict. Use when testing a deployed feature on staging or preview, before shipping frontend changes, reviewing a frontend PR, or checking responsive layout and accessibility.

AI 生成的概览

执行部署后的浏览器质量检查:冒烟测试、交互测试、视觉回归与无障碍审计,并给出是否可发布的结论。

功能
引导智能体对已部署页面进行四个阶段的浏览器质量验证:冒烟测试检查控制台错误、失败请求与 Core Web Vitals;交互测试检查导航链接、表单与登录流程;视觉回归在三种断点下截图并与已提交的基线比对;以及基于 axe-core 的 WCAG 2.2 AA 无障碍检查。最终产出结构化的 Markdown 质检报告,按阶段列出问题,并给出 SHIP、SHIP WITH FIXES、DO NOT SHIP 的结论,缺少视觉基线时则为 INCONCLUSIVE。默认只执行只读流程,任何会修改数据的流程都需要预发布地址与测试凭据。
适用场景
适用于功能部署到预发布或预览环境之后、前端改动发布之前,或审查涉及前端的合并请求时。也适合响应式布局检查与线上页面的无障碍审计。
运行要求
需要浏览器自动化 MCP,例如 claude-in-chrome、Playwright(如通过 Browserbase)或 Puppeteer,并能访问目标网址。会修改数据的流程需要显式确认、预发布或预览地址以及预置的测试凭据。不包含脚本,仅为操作说明。

Browser QA — Automated Visual Testing & Interaction

When to Use

  • After deploying a feature to staging/preview
  • When you need to verify UI behavior across pages
  • Before shipping — confirm layouts, forms, interactions actually work
  • When reviewing PRs that touch frontend code
  • Accessibility audits and responsive testing

How It Works

Uses the browser automation MCP (claude-in-chrome, Playwright, or Puppeteer) to interact with live pages like a real user.

Safety first — blast radius (run read-only by default)

Browser QA drives real auth and real user journeys, so treat the blast radius explicitly. Default to read-only: never run a mutating journey (checkout, payment, delete, mass-update) against a production URL — require an explicit opt-in and a staging/preview URL. Use seeded test credentials, never real production logins, and redact credentials/tokens/PII before saving any screenshot.

Phase 1: Smoke Test

1. Navigate to target URL2. Check for console errors (filter noise: analytics, third-party)3. Verify no 4xx/5xx in network requests4. Screenshot above-the-fold on desktop + mobile viewport5. Check Core Web Vitals: LCP < 2.5s, CLS < 0.1, INP < 200ms   (INP replaced FID in March 2024; thresholds per web.dev)

Phase 2: Interaction Test

1. Click every nav link — verify no dead links2. Submit forms with valid data — verify success state3. Submit forms with invalid data — verify error state4. Test auth flow: login → protected page → logout (test creds only, never prod)5. Test critical user journeys (checkout, onboarding, search)   — read-only by default; only exercise mutating journeys against staging     with explicit opt-in (see "Safety first" above)

Phase 3: Visual Regression

1. Screenshot key pages at 3 breakpoints (375px, 768px, 1440px)2. Compare against committed baseline screenshots   — no baseline ⇒ report INCONCLUSIVE, never a silent PASS3. Flag layout shifts > 5px, missing elements, overflow4. Check dark mode if applicable

Phase 4: Accessibility

1. Run axe-core or equivalent on each page2. Flag WCAG 2.2 AA violations (contrast, labels, focus order)3. Verify keyboard navigation works end-to-end4. Check screen reader landmarks

Note: axe-core automatically covers roughly 30–40% of WCAG. A clean run is necessary, not sufficient — keyboard nav, focus order, and a screen-reader pass still need a manual check. Don't report "accessible" from an automated pass alone.

Output Format

markdown
## QA Report — [URL] — [timestamp]
### Smoke Test- Console errors: 0 critical, 2 warnings (analytics noise)- Network: all 200/304, no failures- Core Web Vitals: LCP 1.2s ✓, CLS 0.02 ✓, INP 89ms ✓
### Interactions- [✓] Nav links: 12/12 working- [✗] Contact form: missing error state for invalid email- [✓] Auth flow: login/logout working
### Visual- [✗] Hero section overflows on 375px viewport- [✓] Dark mode: all pages consistent
### Accessibility- 2 AA violations: missing alt text on hero image, low contrast on footer links
### Verdict: SHIP WITH FIXES (2 issues, 0 blockers)# verdict ∈ SHIP / SHIP WITH FIXES / DO NOT SHIP; use INCONCLUSIVE if no visual baseline

Integration

Works with any browser MCP:

  • mChild__claude-in-chrome__* tools (preferred — uses your actual Chrome)
  • Playwright via mcp__browserbase__*
  • Direct Puppeteer scripts

Pair with /canary-watch for post-deploy monitoring.

来源与署名

来源:affaan-m/ECC位于skills/browser-qa提交ef648e0

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架