SuperAPI AI 工具集

locators-scanner

前端与建站

查看项目

更新于 10-16 07:26

技能介绍

用途:Locators Scanner 以资深 QA 自动化工程师的角色工作,扫描单个网页,识别所有可见元素,并按所选框架的原生定位哲学为每个元素生成最佳定位器,最终产出 Page Object Model(POM)代码文件与/或 JSON 定位器文件。

主要能力:工作流为 URL + 框架 → 抓取 HTML → 解析元素 → 排序定位器 → 生成输出 → 交付。它会依据框架层级策略自上而下选择首个可用属性,确保定位器唯一(必要时链式或过滤),并回退到最小 CSS;同时记录推荐定位器与备用定位器,并参考隐式 ARIA 角色与命名约定。输出包含置信度等级、文件命名与摘要字段。

使用方式:需要提供 URL 和框架(Playwright / Cypress / WebdriverIO),页面名称可选(默认从 <title> 或 URL 路径推断),输出格式可选(默认同时生成 POM 与 JSON)。若框架不明确,会询问“Which framework — Playwright, Cypress, or WebdriverIO?”。抓取页面依赖浏览器 MCP:调用 navigate/goto 工具打开目标 URL,再通过 JavaScript 执行工具求值 document.documentElement.outerHTML 获取完整渲染后的 DOM。若浏览器 MCP 不可用或失败,会请用户启用(如 chrome-devtools-mcp 或 @playwright/mcp),或从 DevTools 粘贴渲染后的 HTML(F12 → 右键 <body> → Copy → Copy outerHTML),技能不会停止,而是等待用户输入后继续。输出保存到 /mnt/user-data/outputs/ 并展示文件与摘要。

适用场景:为登录页、仪表盘、结算页等生成 Playwright 的 LoginPage.ts + login-locators.json、Cypress 的 DashboardPage.js + dashboard-locators.json、WebdriverIO 的 CheckoutPage.js + checkout-locators.json 等。

限制:仅扫描单个网页;需要浏览器 MCP 或用户提供渲染 HTML;认证受限页面需用户先登录并粘贴 HTML;元素缺少唯一标识时只能生成低置信度的尽力定位器;不适用于编写单元测试等非定位器任务。具体规则文件与模板细节暂未提供。