Skills bmad-code-org bmad-method BMad Method
bmad-qa-generate-e2e-tests
- Use it when:
- A working feature has no end-to-end or API test coverage yet.
- It does:
- Lists the user-visible scenarios for you to confirm, learns the project's test harness, writes one test per scenario and runs them twice.
- You get:
- New tests in the project's own runner and layout, and a chat report of what's covered, what isn't and why, bugs found and the command to run them.
- Keeps:
- A test that finds a bug, marked as an expected failure, rather than weakening it; flaky tests get their cause fixed, not retries.
- Not for:
- Unit tests on work in progress, which bmad-build writes.
- Needs:
- uv and BMad set up in the project: run the bmad skill's setup first.
Skill 16 of 24 in the BMad Method bundle, after bmad-walkthrough and before bmad-retrospective.
Only works inside its bundle: Its workflow is printed by a script in the _bmad/ folder that the bmad skill's setup creates, so it does nothing without that setup. Install BMad Method instead.
Needs uv and BMad set up in the project: it runs scripts from the _bmad/ folder that the bmad skill's setup creates.
TL;DR
BMad's QA skill adds tests for behavior that already works, so later changes can be checked against it. It finds the feature from your request, a ticket in review in BMad's ticket tree or the current branch, or asks, offering to list the features with no end-to-end coverage by how much a regression would hurt. It writes each scenario as one sentence a product person would recognize, marks those already covered, and waits for your confirmation. It then reads how the project already tests: the runner, where tests live, how the app starts, test data, authentication and the CI job, and runs the existing suite once; with no harness at all, it proposes one and asks before adding any dependency. Each test goes through the UI by role, label or text, or through the public API, asserts the visible outcome, waits on conditions rather than time, creates its own data and fails for one reason. Product code changes only where the harness needs it, such as a test id, and each change is listed in the report.
Summarizes the skill at e734d3a.
npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-qa-generate-e2e-tests skills.sh pageSource on GitHubAll skills from bmad-code-org/bmad-method
- Total Downloads
- 14,400 on skills.sh, Nov 9, 2026
- Repo stars
- 55,140 bmad-code-org/bmad-method
- First seen
- Mar 17, 2026 on skills.sh
Weekly values
| Week to | Installs |
|---|---|
| Sep 21 | 944 |
| Sep 28 | 1,190 |
| Oct 5 | 2,298 |
| Oct 12 | 2,499 |
| Oct 19 | 1,450 |
| Oct 26 | 1,631 |
| Nov 2 | 1,393 |
| Nov 9 | 1,458 |
| Category |
Find root causes, review code and test what you built. Everything for building software: planning, coding, debugging, design, frameworks, cloud, agents and skills. |
|---|---|
| Type |
A multi-step process the agent follows: interview, debug, run a TDD loop, review. |
| Effect |
Its own steps create or change files, git state or local tools. |
| Needs |
A specific command-line tool or desktop app must be installed, such as gh, agent-browser, LibreOffice, Obsidian or a vendor CLI. |
| Publisher |
Everyone else. Unverified vendor claims default to community. |
| Topics |
SKILL.md
From bmad-code-org/bmad-method at e734d3a. Checked daily, last changed Nov 6, 2026.
Frontmatter
name: bmad-qa-generate-e2e-tests
description: 'Add end-to-end and API tests for features that already work, following the project''s existing test harness. Use when the user asks for e2e tests, API tests, or automated coverage of an existing feature, or says "create qa automated tests for [feature]". Not for unit tests on work in flight, which the build writes.'Run the following command exactly once without changing the current working directory.
Replace {project-root} with the nearest folder containing _bmad/, from the working directory upward.
Replace {skill-root} with the absolute path to this skill's directory.
uv run --no-cache "{project-root}/_bmad/scripts/render_skill.py" --project-root "{project-root}" --skill "{skill-root}"
- The command prints the skill's workflow: follow it.
HALT: <reason>: report the reason and stop. - If the script does not exist, BMad is not set up in this project yet. Offer to set it up using
bmadskill, then run the command again. If you do not have thebmadskill, offer to install it first. - On any other output or failure, including
uvbeing unavailable, report the command output and stop. Do not run any workflow source directly.