SuperAPI AI 工具集

form-validation-scan

测试与质量

查看项目

更新于 10-15 22:12

技能介绍

用途:对任意页面的表单验证 UX 做只读审计,评估表单在用户出错前如何失败,无需注册。触发方式如“Check form validation on https://example.com/signup”“Audit the contact form UX”“Are my form errors accessible?”。前置条件为 Playwright MCP(随 Claude Code 捆绑)。

主要能力:用 mcp__playwright__browser_navigate 导航、browser_snapshot 定位表单并取得元素 ref;用 browser_evaluate 清点每个表单的 action、novalidate、空提交是否会通过、字段的 name/type/required/label/视觉必填标记/aria-describedby。静态检查包括:required 但无星号或“required”文本(WCAG 2.2 SC 3.3.2)、标签暗示 email/phone/website/quantity 却用 type="text"、缺少关联 label(SC 1.3.1/3.3.2)。空提交测试仅在 emptySubmitWouldPass 为 false 时点击提交,然后检查 :invalid 字段的 validationMessage、aria-invalid、可见错误文本及焦点是否在首个无效字段;若为 true 或 novalidate,则报告“无客户端约束”。再用 browser_type 输入错误格式(如 not-an-email、无 scheme 的 url、含字母的 tel)验证客户端拒绝与提示。最终按 A 全部通过、B 一条通用信息、C 错误未通过 aria-describedby 关联或无焦点移动、D 通用错误加错误 input 类型、F 无客户端验证或错误从不出现来评级。

使用限制:必须遵守 READ-ONLY,只输入明显假数据(test@example.com、not-an-email、555-fake),不得让表单真正提交,停在客户端验证,完全跳过支付/结账表单。服务器端验证与重复/限流处理按设计不测,只读扫描不得创建记录,需在报告中说明。报告为“Form Validation Report: {URL}”,含评级、表单数量、已测/跳过数及逐表单检查表。

适用场景:表单可用性与无障碍预检、上线前自查、给开发团队的改进清单。