1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | geb-skill-lambdatest-agent-skills |
| 作者/维护者 | TestMu AI(原 LambdaTest) |
| 来源链接 | https://github.com/LambdaTest/agent-skills/tree/main/geb-skill |
| 许可证 | MIT(数据来自 GitHub API) |
| GitHub Stars | 352(数据来自 GitHub API;为整个合集仓库总量,不代表本技能自身热度) |
| Forks | 69(数据来自 GitHub API,同为合集整体口径) |
| 最新版本 | 1.0(SKILL.md front matter 自述,仓库未发布正式 Release) |
| 安装方式 | 见第 10 章 |
2. 功能介绍与亮点
面向 Geb(基于 Groovy 与 Selenium WebDriver 的浏览器自动化框架)的测试代码生成技能:
- jQuery 风格内容 DSL:用
$("css-selector")、$("div", class: "active")、$("div.items li", 0)等语法定位元素,比原生 Selenium 定位器更简洁;配套.click()、.value()、<<(追加文本)、.text()、.displayed、.@href(取属性)等操作方法。 - Page Object 模式与 Module 复用:
extends geb.Page定义static url/static at/static content;reference/advanced-patterns.md额外给出Module(如导航栏封装)与moduleList批量绑定重复结构(如卡片列表)的写法。 - Spock 深度集成:
GebSpec/GebReportingSpec基类、@Unroll配where:数据表驱动测试、@Stepwise顺序场景流,GebReportingSpec失败时自动截图。 - 等待策略与 JS 交互:
waiting { }全局配置 +slow/quick预设,atCheckWaiting = true处理异步页面跳转,另有 JavaScript 交互与弹窗处理示例。 - 进阶场景覆盖:文件上传/下载、多窗口与 iframe 切换、自定义 Navigator 扩展(
reference/playbook.md§5);结合 GroovyJsonSlurper的 REST API 测试(§6);GitHub Actions headless Chrome CI/CD 配置(§7)。 reference/playbook.md(约 19.6KB)九大专题:项目搭建、页面对象、Spec 测试、等待与异步、进阶模式、API 测试、CI/CD 集成,外加 12 项调试排错对照表与 14 条最佳实践清单。- 云端执行为可选项:通过
LT_USERNAME/LT_ACCESS_KEY环境变量接入 TestMu AI 云端浏览器矩阵,不影响本地测试的开箱即用。
3. 适用场景
所属分类:工程效率与代码质量
已采用或计划采用 Geb 做浏览器自动化测试的 Groovy/JVM 技术团队,尤其是已使用或愿意引入 Spock 测试框架、希望用比原生 Selenium 更简洁的 jQuery 式选择器语法编写页面交互代码的场景;需要 Page Object + Module 复用模式统一团队测试代码风格、或希望用 Spock 的 @Unroll/where 语法做数据驱动测试的场景。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。SKILL.md 采用标准 Agent Skills 格式,仓库 README 提供配套官方安装工具。
- Codex:❓ 未验证——仓库 README 列出的受支持助手为 “Claude Code, GitHub Copilot, Cursor, Gemini CLI”,未点名 Codex。
- OpenClaw:❓ 未验证——已抓取材料未提及。
- Hermes Agent:❓ 未验证——已抓取材料未提及。
5. 推荐理由
Geb 的核心卖点是给 Selenium WebDriver 包一层 jQuery 式内容 DSL 并深度绑定 Spock 测试框架,让浏览器交互代码比原生 Selenium/WebDriverIO 写法更接近自然语言、可读性更高。本技能把这套写法配上完整可运行示例:登录场景的 Spock Spec、Page Object + Module 复用、@Unroll/where 数据驱动测试、等待策略与 JS 交互处理,外加进阶模式(文件上传、多窗口、自定义 Navigator 扩展)、API 测试、CI/CD 接入。reference/playbook.md 把九个专题、12 项调试排错表与 14 条最佳实践清单独立成文,SKILL.md 主文件保持精简,云端浏览器矩阵测试作为可选附加能力出现,不影响核心本地测试体验。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | TestMu AI(原 LambdaTest)是测试云领域公认的一线厂商(累计融资 1.08 亿美元、18,000+ 企业客户含 Microsoft/OpenAI/Nvidia、Forbes 2026-01-12 专文报道),但 Geb 本身是独立开源项目(geb.org),并非该厂商自有技术;合集仓库整体 352 stars/69 forks 属整个代码集合,不代表本技能自身热度;专门检索未找到 geb-skill 自身的独立第三方评价 |
| 可用性 | 8 | 本地安装为标准 Gradle 项目配置(引入 geb-spock/geb-core/selenium-java 等依赖),零账号要求;SKILL.md 含完整可运行示例,配 reference/ 下三份专题文档(合计约 23.2KB)覆盖进阶模式、云端集成与生产级 playbook;子目录最后一次提交约 2026-02-23,约 5.7 个月前,未见归档或功能性问题;云端执行为可选附加能力,不影响核心本地测试的开箱即用度 |
| 安全性 | 9 | 纯 Groovy 代码模板与 Markdown 文档,无可执行脚本;云端集成部分仅通过环境变量传入凭据,未见硬编码;逐份通读 SKILL.md 与三份 reference 文档未发现夹带任何与测试无关的指令;License(MIT)明确 |
安全检查清单:① Shell 命令——技能目录仅含 SKILL.md 与三份 Markdown 参考文档,不含任何可执行脚本;② 联网外发——技能内容不发起网络请求,云端测试是用户自行触发的可选步骤,目标(TestMu AI 官方 Hub 端点)公开透明;③ 凭据——LT_USERNAME/LT_ACCESS_KEY 通过环境变量传入,示例代码未见硬编码;④ 可疑指令——逐份通读 SKILL.md、reference/advanced-patterns.md、reference/cloud-integration.md、reference/playbook.md,未发现要求执行额外操作、隐藏外发或夹带无关推广内容的指令;⑤ 作者信誉——TestMu AI(原 LambdaTest),测试云领域公认一线厂商;⑥ License——MIT,明确;⑦ 最近维护——子目录最后一次提交约 2026-02-23,所属仓库整体近期(2026-07-24)仍有其他文件更新,未被归档。
7. 跟同类 Skills 相比的优势
| 同类项目 | 定位 | 与本技能的差异 |
|---|---|---|
| selenium-skill-lambdatest-agent-skills | 原生 Selenium WebDriver,覆盖 Java/Python/JavaScript/C#/Ruby/PHP 六种语言 | 定位器与断言需手写完整 Selenium API 调用,无内容 DSL 封装;本技能用 jQuery 式选择器与 Spock 断言语法,代码更简洁但仅限 Groovy/JVM 生态 |
| webdriverio-skill-lambdatest-agent-skills | WebdriverIO,服务 JavaScript/TypeScript 生态,Mocha/Jasmine/Cucumber 运行器可切换 | 面向 Node.js/TS 技术栈;本技能面向 Groovy/JVM 技术栈,深度绑定 Spock 而非多运行器可选 |
| reqnroll-skill-lambdatest-agent-skills | .NET 生态 BDD 框架,用标准 Gherkin 关键字(Given/When/Then)编写场景 | 服务 C#/.NET 技术栈,场景描述遵循 Gherkin 自然语言结构;本技能面向 Groovy/JVM,用代码化 Spock Spec(非 Gherkin)组织测试逻辑 |
geb-skill 与上述三者同属浏览器自动化测试代码生成范畴,核心差异在于目标语言生态与断言/选择器语法:Selenium/WebdriverIO 面向多语言或 JS 生态,Reqnroll 面向 Gherkin 风格 BDD;geb-skill 是三者中唯一深度绑定 Groovy + Spock 组合、并用 jQuery 式 DSL 替代原生 API 调用的选项。
8. 用户评价
该技能本身在第三方平台尚无具名用户评价。TestMu AI(LambdaTest)平台整体在 Trustpilot、Gartner Peer Insights 等平台有客户评价,但均针对整个测试云平台,不特指本浏览器自动化测试生成技能。
9. 其他补充
reference/advanced-patterns.md覆盖 Page Object + Module 复用模式、Spock 数据驱动测试、GebConfig 多环境配置与四类反模式清单(Thread.sleep()、直接$()调用、缺失at检查、硬编码 URL)。reference/cloud-integration.md说明如何在 GebConfig 中新增lambdatest环境,接入 TestMu AI 云端 Selenium Grid。reference/playbook.md覆盖项目搭建、页面对象、Spec 测试、等待与异步、进阶模式、API 测试、CI/CD 集成共七个主题,外加调试排障表与最佳实践清单。
10. 安装使用方式
方式一:官方 CLI(仓库推荐)
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill geb-skill
方式二:手动复制
git clone https://github.com/LambdaTest/agent-skills
cp -r agent-skills/geb-skill ~/.claude/skills/
安装后注意事项:复制到位后无需重启;技能会在识别到 “Geb”、“Groovy test”、“GebSpec”、“Browser.drive” 等触发词时自动读取。本地测试需先配置 Gradle 项目并引入 geb-spock、selenium-support 等依赖,零账号要求;仅在使用云端执行功能时才需要导出 LT_USERNAME/LT_ACCESS_KEY 两个环境变量。
11. 注意事项
- Geb 是独立开源项目(geb.org),并非 TestMu AI/LambdaTest 自有技术,该厂商仅提供云执行集成层。
- 深度绑定 Groovy 语言与 JVM 生态,不适合纯 Java(不引入 Groovy)或非 JVM 技术栈团队。
- 云端浏览器矩阵测试依赖 TestMu AI 账号与网络连通性,属可选付费云服务;核心本地测试功能不受此影响。