Suggestions appear as you type. Use the up and down arrows to choose one and Enter to open it.

This page's audience our own tag's counts — open to see them
–Visits
–Page views
–Clicks to vendors
–Time on page
–Reading now
Clicks to vendors, by tool
  • –
Top countries
  • –
Devices
  • –

– · visits, page views and clicks counted by our own tag, which counts more than our checked analytics; every figure rounded down · how we count

pytest-bdd

Free#11 of 29 in BDD Testing Tools

pytest-bdd: A focused Gherkin layer for Python teams that already work in pytest. Ranked #11 of 29 in BDD Testing Tools by our editors (7.2/10); pricing: Open source; best for python developers already using pytest.

7.2/10Editor score
pytest-bdd7.2 Visit pytest-bdd

At a glance

  • Editor score
    7.2 / 10
  • Pricing
    Open source
  • Best for
    Python developers already using pytest
  • Free plan
    No
  • Paid from
    Free
  • Gherkin support
    Yes
  • Facts checked
    21 Sep 2026
pytest-bdd screenshot
  • Where it wins

    • Supports outlines, example tables, backgrounds, datatables, and docstrings
    • Connects BDD scenarios with pytest fixtures, markers, and dependency injection
    • Adds localized feature files and generated step definitions
  • Where it doesn't

    • Requires pytest rather than operating as a separate test runner
    • Browser testing relies on integrations such as pytest-splinter
    • Focused on Python and the pytest ecosystem rather than broader language support

Our verdict on pytest-bdd

pytest-bdd is an open-source Python plugin for behavior-driven development with pytest. It is designed for developers who want to describe requirements in Gherkin feature files while keeping execution and test organization within pytest. Scenarios connect to Given, When, and Then step definitions, with pytest fixtures supplying dependencies. The fit is strongest for teams already invested in pytest and comfortable implementing BDD specifications in Python.

Its feature depth is centered on practical Gherkin support. Scenario outlines can use example tables, while backgrounds, tags, datatables, and docstrings cover common ways to structure shared context and scenario inputs. Tags map to pytest markers, helping teams apply familiar pytest organization to BDD suites. Localized Gherkin feature files broaden how specifications can be written, and step-definition code generation can reduce the initial work of creating implementation scaffolding. Execution remains local through pytest, so the product keeps BDD inside an existing Python test workflow instead of introducing a separate runner.

The ecosystem fit is a key reason to choose pytest-bdd. It integrates with pytest itself and can be combined with pytest-splinter for browser-testing fixtures or pytest-xdist for parallel execution. Those integrations make the tool suitable for teams that want to extend a pytest-based suite without moving away from its established structure. It is less suitable for organizations seeking a standalone BDD platform, a multi-language framework, or a browser-testing product with its own broader platform. Choose pytest-bdd when Gherkin support, pytest fixtures, and Python alignment matter most; consider an alternative when BDD needs to sit outside the pytest ecosystem.

Your product? Our editors can test pytest-bdd in depth and publish a review, labelled as paid · from $149/mo →

pytest-bdd pricing

Plans Open sourceFree Free to use — no paid tier required for the core job.
See plans on pytest-bdd.readthedocs.io

pytest-bdd fact sheet

Free planNo
Paid fromFree
Gherkin supportYes
Supported languagesNot verified
Execution modeLocal
Parallel executionNot verified
Browser testingYes
API accessNot verified
DeploymentDesktop
PlatformsWindows, macOS, Linux
SupportDocs
Built forSolo, Small business, Mid-market, Enterprise (editorial estimate)
Integrations3 integrations: pytest, pytest-splinter, pytest-xdist
PricingOpen source
Websitepytest-bdd.readthedocs.io
Facts checked21 Sep 2026

pytest-bdd integrations

pytest-bdd lists 3 integrations on its own site.

  • pytest
  • pytest-splinter
  • pytest-xdist

Alternatives to pytest-bdd

See all pytest-bdd alternatives →

Used pytest-bdd? Be the first to review it

The editor score above is our own research. What this page doesn't have yet is a reader's view — what you used pytest-bdd for, what worked and what didn't. No stars are seeded and no review is paid for; an editor reads every one before it appears.

Write a reviewTwo minutes · verified accounts only · read by an editor before it appears

Reviews come only from verified accounts. Sign in or create an account first — your e-mail is never shown.

Your rating

0 characters · at least 80, up to 3,000

Posted from your verified account. Reviews appear after an editor reads them, usually within two working days.

Featured on iTechGuides

Featured on iTechGuides — pytest-bdd 7.2/10

pytest-bdd is listed in our BDD Testing Tools directory. Add the badge to your site — it links back to this page.

<a href="https://www.itechguides.com/products/pytest-bdd/"><img src="https://www.itechguides.com/best/badge/pytest-bdd.svg" alt="Featured on iTechGuides" width="230" height="46"></a>

Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026

Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.

Last updated · How we research and update