mcpField
B
browser-qa

browser-qa

github.com/c0x12c测试与质量109120 次安装19 周前更新
代码仓库

关于 browser-qa

browser-qa 是一项使用 Playwright 和真实 Chromium 浏览器测试 Web 应用的技能。它面向前端开发者,覆盖页面状态、响应式布局、交互和导航检查,并生成结构化 QA 报告。

主要功能

  1. 01使用 Playwright 和 Chromium 测试
  2. 02检查页面状态与网络请求
  3. 03检查桌面和移动端布局
  4. 04测试表单、链接和控件
  5. 05生成 QA 报告并截取故障画面

适用场景

  1. 01在提交拉取请求前检查前端功能
  2. 02部署后对 Web 应用进行冒烟测试
  3. 03排查用户报告的视觉或交互问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/c0x12c/ai-toolkit --skill browser-qa

安装后在 Claude Code 中输入/browser-qa确认已加载。

附带文件playwright-snippets.md

详细介绍

浏览器 QA 技能

使用真实浏览器测试 Web 应用。找出用户会遇到的 bug。

适用场景

  • 构建完前端功能后
  • 为 UI 更改创建 PR 前
  • 用户反馈“有些地方看起来坏了”时
  • 部署后的冒烟测试

此技能的功能

  1. 使用真实的 Chromium 启动 Playwright
  2. 访问应用中所有可发现的页面
  3. 检查控制台错误、网络故障和损坏的资源
  4. 测试交互元素(表单、按钮、链接)
  5. 验证移动端响应式表现
  6. 生成结构化 QA 报告

QA 检查类别

1. 页面健康状况

每个页面都会进行以下检查:

  • HTTP 状态码为 2xx
  • 没有 JavaScript 控制台错误
  • 没有失败的网络请求(4xx/5xx)
  • 没有缺失的图片或资源
  • 页面在 3 秒内加载完成
2. 布局与响应式表现
  • 桌面端(1280px):没有水平滚动条,没有元素重叠
  • 移动端(375px):没有水平滚动条,文本清晰可读,按钮可点击
  • 没有内容意外被裁切或隐藏
3. 交互元素
  • 按钮:点击 → 有相应操作(没有无响应的按钮)
  • 链接:点击 → 跳转到有效页面(没有 404)
  • 表单:提交空表单 → 显示验证信息。提交有效表单 → 显示成功反馈。
  • 下拉菜单/模态框:打开 → 显示内容。关闭 → 隐藏内容。
4. 导航流程
  • 导航栏中的每个链接都指向有效页面
  • 后退按钮按预期工作
  • 面包屑(如有)准确无误
  • 身份验证重定向正常工作(受保护页面 → 登录 → 重定向回原页面)
5. 数据显示
  • 列表显示数据(有数据时不会显示空状态)
  • 分页正常工作(如有)
  • 搜索/筛选会更新结果
  • 获取数据期间显示加载状态
  • API 失败时显示错误状态

Playwright 模式与报告模板

参阅 playwright-snippets.md,获取可直接使用的 Playwright 代码(页面测试、移动视口、表单测试、失败时截图)和 QA 报告模板。

注意事项

  • 在使用 WebSocket 或轮询的应用中,networkidle 会一直等待。 如果应用有实时连接,请改用 domcontentloaded 或特定元素选择器。
  • 对不可见元素调用 page.click() 也可能静默通过。 交互前务必确认元素可见。先使用 await expect(locator).toBeVisible()。
  • 未模拟触摸操作的移动视口测试会漏掉真实 bug。 请在浏览器上下文中设置 hasTouch: true,而不只是调整视口尺寸。
  • 控制台警告不等于控制台错误。 不要将 React hydration 警告或弃用提示报告为 bug。只有 console.error 和失败的网络请求才是 bug。
  • CI 上的截图与本地截图可能不同。 macOS 和 Linux 的字体渲染、抗锯齿和 DPI 均有差异。请使用视觉比对阈值,而不是要求像素级完全匹配。

规则

  • 只使用真实浏览器。 使用 Playwright + Chromium。不要只进行 HTTP 测试。
  • 默认使用无头模式。 除非用户要求,否则不要打开可见窗口。
  • 测试两种视口。 桌面端(1280px)和移动端(375px)。
  • 控制台错误就是 bug。 务必报告。
  • 单次运行模式。 启动浏览器、执行测试、关闭浏览器。不要运行守护进程。
  • 对失败项截图。 出现问题时截图。
  • 未经询问不要修复。 先报告,再提出修复方案。

评论

支持 Markdown