Run BDD tests with Playwright runner.
Inspired by the issue in the Playwright repo microsoft/playwright#11975
🔥 Check out decorators syntax to define BDD steps right inside Page Object Models
Both Playwright and CucumberJS have their own test runners. You can use CucumberJS runner with Playwright as a library to test BDD scenarios. This package offers an alternative way: convert BDD scenarios into Playwright tests and run them with Playwright runner as usual. Such approach brings all the benefits of Playwright runner:
- Automatic browser initialization and cleanup
- Power of Playwright fixtures
- Out-of-box screenshot testing
- Parallelization with sharding
- ...a lot more
Check out documentation website.
Clone and play with playwright-bdd-example repo.
Feel free to share your feedback in issues.
Inspect the latest updates in the changelog.
Great thanks to sponsors for supporting playwright-bdd project ❤️ Become a sponsor




Have a look on this section.
# install needed Playwright version
npm i --no-save @playwright/[email protected]
# install corresponding chromium without clearing other versions
npx cross-env PLAYWRIGHT_SKIP_BROWSER_GC=1 playwright install chromium
# run all tests
npm run test
# run particular test
npm run only