1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | serenity-bdd-skill-lambdatest-agent-skills |
| 作者/维护者 | TestMu AI(原 LambdaTest) |
| 来源链接 | https://github.com/LambdaTest/agent-skills/tree/main/serenity-bdd-skill |
| 许可证 | MIT(数据来自 GitHub API) |
| GitHub Stars | 352(数据来自 GitHub API;为整个合集仓库总量,不代表本技能自身热度) |
| Forks | 69(数据来自 GitHub API,同为合集整体口径) |
| 最新版本 | 1.0(SKILL.md front matter 自述,仓库未发布正式 Release) |
| 安装方式 | 见第 10 章 |
2. 功能介绍与亮点
为 Serenity BDD(Java 生态的行为驱动开发测试框架,以“活文档”风格的富 HTML 报告著称)生成 Screenplay 模式测试代码的技能。
- Screenplay 模式全覆盖:
Task/Question/Actor/Performable四类核心对象的写法均给出可直接套用的示例,包括可复用的 Task 静态工厂方法(如Login.withCredentials(...))与Question<T>封装页面状态查询。 - Step Library 模式:
@Step注解 +ScenarioSteps基类,配合PageObject/WebElementFacade(内建等待、可见性检查与自动截图)生成可读性强的分步测试。 - Cucumber 集成:Gherkin Feature 文件对接
@Narrative/@WithTags/SerenityStory,生成面向业务方可读的“活文档”。 - REST API 测试:
SerenityRest封装 REST-assured,API 调用步骤同样被记录进报告。 - 深度 Playbook(10 个专题):
reference/playbook.md(约 26.7 KB)覆盖 Maven 多依赖项目配置(serenity.conf含多环境切换)、Step Library 与 Page Object、Screenplay Task/Question/Ability、Cucumber 集成、REST API 测试、报告与标签、TestMu AI 云端集成、GitHub Actions CI/CD 含并行执行、12 项调试排错对照表、13 条最佳实践清单;另有reference/advanced-patterns.md补充反模式清单。SKILL.md + 两份参考文档合计约 33.3 KB。 - 纯参考文档形态:子目录仅含 SKILL.md 与两份 Markdown 参考文档,不含任何可执行脚本。
- 可选云端执行:正文附 TestMu AI(原 LambdaTest)云端跨浏览器矩阵配置(
serenity.conf与serenity.properties两种写法),通过环境变量LT_USERNAME/LT_ACCESS_KEY接入,属可选增强,本地mvn verify运行不依赖任何第三方账号。
3. 适用场景
所属分类:工程效率与代码质量
已用 JUnit/TestNG 做过 Java 单元测试、现在需要给验收测试产出“活文档”风格富报告(业务方可读、自动截图、Screenplay 角色化叙事)的 Java 测试工程师与 QA 团队;也适用于希望把测试意图(Task/Question)与实现细节(WebDriver/PageObject)解耦、减少测试代码重复的场景。不依赖 TestMu AI 云端服务,纯本地可用。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。SKILL.md 采用标准 Agent Skills 格式,仓库 README 给出配套的官方安装工具。
- Codex:❓ 未验证——仓库 README 列出的受支持助手为 “Claude Code, Copilot, Cursor, Gemini CLI”,未点名 Codex。
- OpenClaw:❓ 未验证——已抓取材料未提及。
- Hermes Agent:❓ 未验证——已抓取材料未提及。
5. 推荐理由
Screenplay 模式、Step Library、Cucumber 活文档、REST API 测试四条主线均给出完整示例,附 12 项调试排错表与 13 条最佳实践清单,核心路径零付费依赖、子目录不含任何脚本,安全面干净。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | TestMu AI(原 LambdaTest)是该领域公认的一线测试云平台:累计融资 1.08 亿美元(8 轮,最近一轮 2024 年 Avataar Venture Partners 领投的 3800 万美元 C 轮),18,000+ 企业客户(含 Microsoft、OpenAI、Nvidia),Forbes 2026-01-12 有专文报道。合集仓库整体 352 stars 属整个合集,不代表本技能自身热度,未查到本技能自身的独立第三方评价 |
| 可用性 | 8 | 文档完整含 10 个专题、903 行参考文档,覆盖从 Maven 项目配置到 CI/CD、调试排错、最佳实践的全链路;需通过 Maven 引入 7 个 Serenity 依赖并配置 serenity.conf 才能跑通完整功能;子目录最后提交约 5.9 个月前,未见归档或功能性问题 |
| 安全性 | 9 | 子目录不含任何脚本或可执行文件,仅 SKILL.md 与两份 Markdown 参考文档;逐份扫描未见可疑指令或隐藏外发;云端集成的凭据(LT_USERNAME/LT_ACCESS_KEY)仅用于连接 TestMu AI 官方测试网格,用途透明且为可选项;License(MIT)明确 |
安全检查清单:① Shell 命令——无,不含 scripts/;② 联网外发——纯本地生成测试代码,可选云端集成的联网目标(TestMu AI 测试网格)在文档中明确说明,无隐藏外发;③ 凭据——仅可选云端功能涉及 LT_USERNAME/LT_ACCESS_KEY,存储方式为环境变量,用途明确;④ 可疑指令——未发现;⑤ 作者信誉——TestMu AI,融资/客户量/媒体报道均可查证,良好;⑥ License——MIT,明确;⑦ 最近维护——约 2026-02-17,约 5.9 个月前,未见归档。
7. 跟同类 Skills 相比的优势
| 同类项目 | 定位 | 与本技能的差异 |
|---|---|---|
| cucumber-skill-lambdatest-agent-skills | 同池姊妹技能,纯 Gherkin BDD 框架(Java/JavaScript 双语言 Step Definitions),报告依赖 Allure/masterthought 等外部插件 | 无 Screenplay 模式与内建活文档报告;本技能的富 HTML 报告与 Task/Question 角色化设计是原生能力,无需额外插件 |
| junit-5-skill-lambdatest-agent-skills | 同池姊妹技能,纯 Java 单元测试框架(断言、参数化、嵌套测试、Mockito 集成) | 面向单元测试而非验收/BDD 测试,不含 Gherkin、Screenplay 或活文档报告;两者可配合使用(单元测试用 JUnit5,验收测试用 Serenity BDD) |
| reqnroll-skill-lambdatest-agent-skills | 同池姊妹技能,.NET 生态的 Gherkin/BDD 框架(SpecFlow 继任者) | 服务 .NET/C# 项目;本技能服务 Java 项目,两者面向不同技术栈,非直接竞争关系 |
| behave-skill(TestMu AI 同仓库另一测试框架技能) | Python 生态的 BDD 框架,基于 Gherkin 特性文件与 step 实现,同样支持 TestMu AI 云端集成 | 服务 Python 项目,且无 Screenplay 模式与富 HTML 活文档报告;本技能服务 Java 项目,报告能力更强 |
核心差异化在“Screenplay 设计模式 + 活文档报告”的组合:把测试意图(Task/Question)与实现细节(WebDriver 操作)解耦,同时自动生成业务方可读的富报告,这在上表列出的同类 Java 测试技能(JUnit5、Cucumber)中都不具备,对已决定采用 BDD 且重视测试报告可读性的团队针对性更强。
8. 用户评价
该技能目前在第三方平台尚无具名用户评价;LambdaTest/agent-skills 仓库整体在 GitHub 上有真实的多贡献者协作记录。
9. 其他补充
- 支持语言:Java。
- 反模式清单明确指出“直接调用 WebDriver”“在 Task 类中做断言”“跳过
@Step注解”“臃肿的 Step Definition”四类常见误用及其修正方向。 - 调试排错表覆盖
@Steps字段为空、Page Object 未注入、报告为空、Cucumber 找不到 Step 等 12 个常见报错场景及对应修复方法。
10. 安装使用方式
方式一:官方 CLI(仓库推荐)
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill serenity-bdd-skill
方式二:手动复制(本技能不含任何脚本,直接复制目录即可)
git clone https://github.com/LambdaTest/agent-skills
cp -r agent-skills/serenity-bdd-skill ~/.claude/skills/
安装后注意事项:复制到位后无需重启、无需注册任何账号,Agent 会在识别到 “Serenity”、“Screenplay”、“@Steps”、“Serenity BDD” 等触发词时自动读取本技能内容。
11. 注意事项
- 本技能面向“已经决定用 Serenity BDD”的 Java 项目;
mvn verify会拉取serenity-core/serenity-junit5/serenity-screenplay等多个 Maven 依赖,比单一测试库的安装步骤略重。 - 富 HTML 报告需执行
mvn serenity:aggregate(或在 CI 中配置对应插件阶段)才会生成,未配置该步骤时报告目录可能为空。 - 子目录最后提交约在 2026-02-17,约 5.9 个月前,暂未发现功能性问题,但关注长期维护节奏的团队可留意后续更新频率。