pytest-bdd logo

pytest-bdd

Pytest plugin implementing a subset of the Gherkin language, enabling behavior-driven development tests alongside regular pytest tests without extra runners.

-

Our Verdict

A pragmatic BDD option when your team already lives in pytest and does not want a second test runner.

Pros

  • Gherkin syntax inside pytest, no second runner
  • Reuses pytest fixtures in step definitions
  • Lighter weight than behave
  • Compatible with pytest-xdist parallelism

Cons

  • Gherkin parsing less complete than Cucumber
  • Less expressive than behave for pure BDD
  • Limited IDE support vs full Cucumber tooling
Best for: pytest shops needing Gherkin for stakeholder-readable acceptance tests Not for: Teams doing strict BDD where Cucumber's tooling ecosystem matters more

When to Use pytest-bdd

Good fit if you need

  • Gherkin scenarios executed natively within pytest
  • Mix BDD scenarios with regular pytest tests in one run
  • Step reuse across feature files via shared step modules
  • Parametrize BDD scenarios with example table data

Lock-in Assessment

Low 5/5
Lock-in Score
5/5

pytest-bdd Pricing

Pricing Model
free
Free Tier
Yes
Entry Price
Enterprise Available
No
Transparency Score

Beta — estimates may differ from actual pricing

1,000
1001K10K100K1M

Estimated Monthly Cost

$25

Estimated Annual Cost

$300

Estimates are approximate and may not reflect current pricing. Always check the official pricing page.

Project Health

B

Health Score

1.4k 237
Bus Factor

9

Last Commit

today

Release Freq

N/A

Open Issues

86

Issue Response

1d

License

MIT

Last checked: 2026-04-21

Community Discussion

Comments powered by Giscus (GitHub Discussions). You need a GitHub account to comment.