Generate Gherkin BDD scenarios across all quality angles — functional, accessibility, security, performance, SEO, offline, UI, backend, data, DevSecOps, CI/CD. Runner-agnostic step definitions with traceability to requirements and constitutional principles. [EXPLICIT] Trigger: 'BDD', 'Gherkin', 'Given When Then', 'full-spectrum testing', 'acceptance scenarios'
"If you can't express it as a Given/When/Then, you don't understand it well enough to build it."
Generates Behavior-Driven Development scenarios that go beyond functional happy paths. Every feature gets Gherkin scenarios across all relevant quality angles: functional, accessibility, security, performance, SEO, offline, UI, backend, data, DevSecOps, and CI/CD. Step definitions are runner-agnostic — Playwright for browser tests, Vitest for code invariants, Firebase Emulator for security rules. Each scenario traces to a requirement (FR-XXX), success criterion (SC-XXX), and constitutional principle. [EXPLICIT]
.feature files for coverage gaps@functional — Does the feature do what it should?@a11y — Is it keyboard-navigable, screen-reader friendly, ARIA-correct?@security — Are inputs sanitized? Rules enforced? No secrets exposed?@perf — Does it meet Lighthouse budgets? Load within 2s on 3G?@seo — Meta tags present? Structured data correct? Crawlable?@offline — Degrades gracefully? Cached content displayed?@ui — Design tokens used? No hardcoded colors/fonts?@backend — Security rules pass? Data model validates?@data — Schema enforced? Both languages present? Audit logged?@devsecops — No secrets in client code? Rules tested pre-deploy?@cicd — Gates block broken code? Tests run before merge?.feature files with Gherkin syntax:
@functional @TS-022
Feature: Task creation
Scenario: User creates a new task
Given I am logged in as a team member
When I enter "Buy groceries" in the task input
And I click the "Add" button
Then a task "Buy groceries" appears in the task list
And the task has status "todo"
@security @TS-024
Feature: Input sanitization
Scenario: HTML tags are stripped from task input
Given I am logged in as a team member
When I enter "<script>alert('xss')</script>Buy groceries" in the task input
And I click the "Add" button
Then the stored task title is "Buy groceries"
And no script tags exist in the DOM@TS-xxx (requirement), @SC-xxx (success criterion), @P-xxx (principle)@functional), requirement (@TS-xxx), and principle (@P-xxx)| Anti-Pattern | Why It's Bad | Do This Instead |
|---|---|---|
Only writing @functional scenarios | Misses security, a11y, perf regressions | Cover all applicable angles |
| Forcing all tests through Playwright | Slow, flaky, wrong tool for code invariants | Match runner to test nature |
| Modifying feature files to pass | Weakens the spec to match broken code | Fix the code, not the spec |
| Skipping traceability tags | Orphaned tests lose their purpose | Every scenario traces to a requirement |
| Writing scenarios after code | Defeats BDD — tests should drive development | Write scenarios BEFORE code (ATDD) |
test-strategy — Overall test pyramid and automation architecturee2e-testing — Playwright-specific implementation of browser scenariosunit-testing — Vitest/Jest implementation of code invariant scenariossecurity-testing — Security-specific test patternssocratic-debate — Resolve ambiguous scenarios before implementationExample invocations:
| Scenario | Handling |
|---|---|
| Empty or minimal input | Request clarification before proceeding |
| Conflicting requirements | Flag conflicts explicitly, propose resolution |
| Out-of-scope request | Redirect to appropriate skill or escalate |
Capas del packet, cargables bajo demanda (disciplina ICM: una capa por vez, nunca todas juntas): knowledge/ cuerpo de conocimiento · prompts/ prompts listos · examples/ salida de ejemplo · agents/ subagentes del packet · templates/ plantilla de output.
e8f986b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.