1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | behave-skill-lambdatest-agent-skills |
| 作者/维护者 | TestMu AI(原 LambdaTest) |
| 来源链接 | https://github.com/LambdaTest/agent-skills/tree/main/behave-skill |
| 许可证 | MIT(数据来自 GitHub API) |
| GitHub Stars | 352(数据来自 GitHub API;为整个合集仓库总量,不代表本技能自身热度) |
| Forks | 69(数据来自 GitHub API,同为合集整体口径) |
| 最新版本 | 1.0(SKILL.md front matter 自述,仓库未发布正式 Release) |
| 安装方式 | 见第 10 章 |
2. 功能介绍与亮点
为 Python 生态的 Behave BDD 框架生成 Gherkin 特性文件与步骤实现代码的技能,覆盖从可读用例到可执行测试的完整链路:
- Gherkin 特性文件示例完整:涵盖
Background、多场景、Scenario Outline+Examples数据驱动表格,用真实登录场景演示如何把业务需求写成非技术人员也能读懂的用例。 - 步骤实现与浏览器操作对齐:
@given/@when/@then装饰器示例直接对接 Selenium(元素定位、显式等待、断言),不是空泛的语法介绍。 - 环境钩子覆盖测试生命周期:
before_all/before_scenario/after_scenario示例包含失败自动截图、浏览器实例清理,减少“测试跑完忘记关浏览器”一类的资源泄漏问题。 - 标签过滤与报告输出:给出
@smoke/@critical标签用法与behave --tags组合过滤命令,以及 JSON 格式测试报告的生成方式。 - 进阶模式独立成文:配套
reference/playbook.md(约 17.3KB,覆盖项目结构、PyHamcrest 断言、页面对象模式、数据库事务隔离、CI/CD 集成、12 项常见问题排查表、14 条最佳实践清单)与reference/advanced-patterns.md,SKILL.md 主文件保持精简、按需展开,三份文档合计约 25KB。 - 纯参考文档形态:子目录仅含 SKILL.md 与两份 Markdown 参考文档,不含任何可执行脚本。
3. 适用场景
所属分类:工程效率与代码质量
已使用或计划引入 Behave 做 Python 项目行为驱动开发(BDD)的团队,尤其是需要把测试用例写成产品经理、QA、业务方都能读懂的 Gherkin 格式、又不想逐一查阅 Behave 官方文档的开发者;也适合已有 Selenium 测试基础、想补上一层可读性更强的验收测试的团队。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。SKILL.md 采用标准 Agent Skills 格式,仓库 README 提供配套官方安装工具。
- Codex:❓ 未验证——仓库 README 列出的受支持助手为 “Claude Code, GitHub Copilot, Cursor, Gemini CLI”,未点名 Codex。
- OpenClaw:❓ 未验证——已抓取材料未提及。
- Hermes Agent:❓ 未验证——已抓取材料未提及。
5. 推荐理由
把 Python BDD 测试从“写 Gherkin 用例”到“接上 Selenium 跑起来”的完整链路讲清楚:特性文件、步骤实现、环境钩子(含失败自动截图)、标签过滤、JSON 报告一次性覆盖,配套 playbook 再补上页面对象模式与 CI 集成等生产级细节;子目录不含任何脚本,安全面干净,且目前索引内尚无同类的 Python BDD 技能。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | TestMu AI(原 LambdaTest)是测试云领域公认的一线厂商,为 Selenium/Appium/Playwright 等主流框架提供云执行服务,但 Behave 本身并非该厂商的自有产品或技术;合集仓库整体 352 stars/69 forks 属整个代码集合,不代表本技能自身热度;专门检索未找到该技能自身的独立第三方评价 |
| 可用性 | 8 | 核心用法 pip install behave selenium 后 behave 一条命令即可运行,本地零账号;SKILL.md 含完整可运行示例,配 reference/ 下两份专题文档(合计约 25KB)覆盖页面对象、数据库隔离、CI 集成等进阶模式;上游 Behave 框架维护活跃(近期仍有提交),子目录本身最近一次提交约 2026-02-23,约 5.7 个月前;云端执行为可选附加能力,不影响核心本地测试的开箱即用度 |
| 安全性 | 9 | 子目录不含任何脚本或可执行文件,仅 SKILL.md 与两份 Markdown 参考文档;逐份通读未见可疑指令或隐藏外发;云端执行部分的凭据(LT_USERNAME/LT_ACCESS_KEY)均以环境变量占位符呈现,无硬编码;License(MIT)明确 |
安全检查清单:① Shell 命令——技能本身不含可执行脚本,仅提供 pip install/behave 等示例命令供用户自行在终端执行;② 联网外发——技能内容不发起网络请求,云端执行是用户自行触发的可选步骤,目标(TestMu AI/LambdaTest 云 API)公开透明;③ 凭据——LT_USERNAME/LT_ACCESS_KEY 通过环境变量传入,示例代码未见硬编码;④ 可疑指令——逐份通读 SKILL.md 与两份 reference 文档,未发现要求执行额外操作或隐藏外发的指令;⑤ 作者信誉——TestMu AI(原 LambdaTest),测试云领域公认一线厂商;⑥ License——MIT,明确;⑦ 最近维护——子目录最近一次提交约 2026-02-23,约 5.7 个月前,所属仓库整体近期(2026-07-24)仍有其他文件更新,未被归档。
7. 跟同类 Skills 相比的优势
| 同类项目 | 定位 | 与本技能的差异 |
|---|---|---|
| pytest-skill-lambdatest-agent-skills | 同池姊妹技能,Python 通用测试框架(含可选的 pytest-bdd 插件支持 Gherkin 风格用例) | pytest 定位是通用断言式测试框架,BDD 只是插件附加能力;本技能围绕 Behave 原生 BDD 工作流展开,特性文件、步骤实现、标签过滤均是一等公民 |
| robot-framework-skill-lambdatest-agent-skills | 同池姊妹技能,关键字驱动测试框架,同样支持自然语言风格用例 | Robot Framework 用专有关键字表格/RST 式语法,学习曲线更陡;本技能采用行业标准 Gherkin 语法(Given/When/Then),可读性对非技术协作者更友好 |
| pytest-bdd(PyPI 独立插件) | 把 Gherkin 特性文件绑定到 pytest 测试函数,复用 pytest 的 fixture 与插件生态 | 更适合已重度依赖 pytest fixture 体系的团队;Behave 则是独立运行的专用 BDD 框架,环境钩子(before_all/before_scenario)与标签过滤是原生内置能力,不依赖 pytest 插件生态 |
核心差异化在于“原生 BDD 工作流完整覆盖”:同类方案要么把 BDD 当作通用测试框架的附加插件(pytest-bdd),要么用非标准语法牺牲可读性(Robot Framework),本技能围绕 Behave 的原生 Gherkin 语法与生命周期钩子,把特性文件到步骤实现、失败截图、标签过滤、CI 集成一次性讲全。
8. 用户评价
该技能本身在第三方平台尚无具名用户评价;上游 Behave 框架在 Python 社区有长期稳定的使用基础,是 Python BDD 测试的主流选择之一。
9. 其他补充
- 支持语言:Python。
reference/playbook.md覆盖项目结构(behave.ini)、Scenario Outline数据表格、PyHamcrest 断言、页面对象模式、数据库事务隔离、CI/CD(GitHub Actions + Allure 报告)集成、12 项常见问题排查表与 14 条最佳实践清单。reference/advanced-patterns.md提供额外的进阶用法补充。
10. 安装使用方式
方式一:官方 CLI(仓库推荐)
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill behave-skill
方式二:手动复制(本技能不含任何脚本,直接复制目录即可)
git clone https://github.com/LambdaTest/agent-skills
cp -r agent-skills/behave-skill ~/.claude/skills/
安装后注意事项:复制到位后无需重启;技能会在识别到 “Behave”、“Python BDD”、“Python Gherkin” 等触发词时自动读取。本地测试(behave 命令)无需 TestMu AI 账号即可运行,仅在使用云端执行功能时才需要导出 LT_USERNAME/LT_ACCESS_KEY 两个环境变量。
11. 注意事项
- 仅覆盖 Python + Behave 组合,不涉及其他语言的 BDD 框架(如需 PHP BDD 需使用同池其他专属技能)。
- 云端执行依赖 TestMu AI(LambdaTest)账号与网络连通性,属可选付费云服务;核心本地测试功能不受此影响。
- 内容聚焦“如何写 Behave 测试代码”本身,不涉及 BDD 方法论选型(如是否该用 BDD、Behave 与 pytest-bdd 如何取舍)等更广泛的工程决策。