agentleFS
TashanGKDTashanGKD/cc_plugins/.claude/skills/bdd/SKILL.md

bdd

Skill4 starsChanged 10 months agoMITView on GitHub

行为驱动开发(BDD)流程助手。用 Given-When-Then 描述验收标准,包含 Feature 文件管理、步骤定义实现。用户提到 BDD、验收测试、Gherkin 时使用。

16 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use atdd, sdd and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • swingermanSkill

    atdd

    Use to drive feature work through the Acceptance Test Driven Development workflow — Given/When/Then specs before code, a project-specific test pipeline, and two parallel test streams (acceptance + unit). Triggers — "/atdd", "build a feature", "implement a feature", "add functionality", "start development", "write acceptance tests", "write specs", "use ATDD", "use TDD with acceptance tests".

    Also in 3 projects that use this

  • liatrio-labsSkill

    sdd

    Execute the Liatrio Spec-Driven Development (SDD) workflow when explicitly invoked by the user. NOTE: this skill is NOT intended to be dynamically loaded or automatically triggered; it should only ever be explicitly called by the user.

    Also in 3 projects that use this

  • anombyte93Skill

    discover

    Phase 1 of the prd-taskmaster pipeline: brainstorm-driven discovery. Delegates to superpowers:brainstorming in Interactive Mode (one adaptive question at a time), or self-brainstorms in Autonomous Mode when no user is present. Intercepts before the brainstorming chain hands off to writing-plans — this skill owns the exit. Extracts constraints, calibrates scale (Solo / Team / Enterprise), and advances the pipeline to GENERATE.

    Also in 3 projects that use this

  • MicrosoftSkill

    api-design

    Guide for designing and documenting RESTful APIs. Use when asked to design an API, create endpoints, or document an API.

    Also in 3 projects that use this

  • MicrosoftSkill

    writing-for-agents

    Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.

    Also in 3 projects that use this

  • GitHubSkill

    refactor

    Surgical code refactoring to improve maintainability without changing behavior. Covers extracting functions, renaming variables, breaking down god functions, improving type safety, eliminating code smells, and applying design patterns. Less drastic than repo-rebuilder; use for gradual improvements.

    Also in 3 projects that use this

  • +1 more from microsoft

The file

Files
SKILL.md

BDD 行为驱动开发

业务语言描述测试,连接需求与代码

用自然语言描述验收标准,让业务、开发、测试达成共识。


快捷命令

/bdd                 # 交互式引导
/bdd feature         # 创建 Feature 文件
/bdd step            # 实现步骤定义
/bdd run             # 运行 BDD 测试

1. BDD 与 TDD 分层

┌─────────────────────────────────────────┐
│  BDD - 验收测试 (behave)                │
│  Feature: 用户登录                       │
│  Scenario: 错误密码登录                  │
└─────────────────────────────────────────┘
                ↓
┌─────────────────────────────────────────┐
│  TDD - 单元测试 (pytest)                │
│  def test_login(): ...                  │
└─────────────────────────────────────────┘
层次工具关注点
E2E/验收behave业务场景
集成pytest模块交互
单元pytest函数逻辑

2. Gherkin 语法

2.1 基本结构

Feature: [功能名称]

  Scenario: [场景名称]
    Given [前置条件]
    When [执行操作]
    Then [预期结果]

2.2 关键字

关键字用途示例
Feature功能描述Feature: 用户登录
Scenario具体场景Scenario: 使用错误密码
Given前置条件Given 用户在登录页
When执行动作When 点击登录按钮
Then验证结果Then 显示错误提示
And补充条件And 输入用户名

3. 项目结构

project/
├── features/
│   ├── README.md              # Feature 索引(自动维护)
│   ├── login.feature          # Gherkin 场景
│   └── steps/
│       └── login_steps.py     # 步骤定义
└── environment.py             # 环境配置

4. 步骤定义

from behave import given, when, then

@given('用户在登录页面')
def step_login_page(context):
    context.page = LoginPage()

@when('输入用户名 "{username}" 和密码 "{password}"')
def step_input_credentials(context, username, password):
    context.page.login(username, password)

@then('显示错误消息 "{message}"')
def step_check_error(context, message):
    assert context.page.error == message

5. 运行命令

场景命令
运行全部behave
特定文件behave features/login.feature
特定场景behave --name="错误密码"
跳过标签behave --tags=~slow

6. Git 提交规范

阶段前缀示例
创建 Featuretest:test: 添加登录功能场景
实现步骤test:test: 实现登录步骤定义
修复场景fix:fix: 修复登录场景断言

业务共识 → 可执行文档 → 自动化测试

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.