Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vitalets/playwright-bdd
BDD testing with Playwright runner
https://github.com/vitalets/playwright-bdd
automated-testing bdd cucumber gherkin playwright testing
Last synced: 25 days ago
JSON representation
BDD testing with Playwright runner
- Host: GitHub
- URL: https://github.com/vitalets/playwright-bdd
- Owner: vitalets
- License: mit
- Created: 2023-03-30T10:22:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-12T16:14:56.000Z (7 months ago)
- Last Synced: 2024-04-14T20:25:19.193Z (7 months ago)
- Topics: automated-testing, bdd, cucumber, gherkin, playwright, testing
- Language: TypeScript
- Homepage: https://vitalets.github.io/playwright-bdd/
- Size: 3.39 MB
- Stars: 185
- Watchers: 10
- Forks: 15
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-playwright - playwright-bdd - BDD testing with Playwright runner and CucumberJS. (Integrations)
- awesome-testing - playwright-bdd - A module for running Behaviour-Driven Development (BDD) tests with Playwright runner. (Software / Make your life easier)
README
# playwright-bdd
[![lint](https://github.com/vitalets/playwright-bdd/actions/workflows/lint.yaml/badge.svg)](https://github.com/vitalets/playwright-bdd/actions/workflows/lint.yaml)
[![test](https://github.com/vitalets/playwright-bdd/actions/workflows/test.yaml/badge.svg)](https://github.com/vitalets/playwright-bdd/actions/workflows/test.yaml)
[![npm version](https://img.shields.io/npm/v/playwright-bdd)](https://www.npmjs.com/package/playwright-bdd)
[![npm downloads](https://img.shields.io/npm/dw/playwright-bdd)](https://www.npmjs.com/package/playwright-bdd)
[![license](https://img.shields.io/npm/l/playwright-bdd)](https://github.com/vitalets/playwright-bdd/blob/main/LICENSE)Run [BDD](https://cucumber.io/docs/bdd/) tests with [Playwright](https://playwright.dev/) runner.
> Inspired by the issue in the Playwright repo [microsoft/playwright#11975](https://github.com/microsoft/playwright/issues/11975)
> [!TIP]
> **Playwright-bdd v7 is released!** Dropped Cucumber package dependency, simpler configuration and other improvements. [Try it out](https://vitalets.github.io/playwright-bdd/#/guides/migration-v7) and share the feedback!## Why Playwright runner?
Both [Playwright](https://playwright.dev/) and [CucumberJS](https://github.com/cucumber/cucumber-js) have their own test runners.
You can use CucumberJS runner with [Playwright as a library](https://medium.com/@manabie/how-to-use-playwright-in-cucumberjs-f8ee5b89bccc) 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
* Auto-capture of screenshots, videos and traces
* Parallelization with sharding
* Auto-waiting of page elements
* Out-of-box visual comparison testing
* Power of Playwright fixtures
* [...a lot more](https://playwright.dev/docs/library#key-differences)## Extras
Some features were developed in `playwright-bdd` on top of Playwright and BDD approaches:* [Decorator steps](https://vitalets.github.io/playwright-bdd/#/writing-steps/decorators)
* [Special tags](https://vitalets.github.io/playwright-bdd/#/writing-features/special-tags)
* [Calling step from step](https://vitalets.github.io/playwright-bdd/#/writing-steps/playwright-style?id=call-step-from-step)## Documentation
Check out [documentation website](https://vitalets.github.io/playwright-bdd/#/).## Examples
There are several examples in [`examples`](/examples) folder and a separate fully working repo [playwright-bdd-example](https://github.com/vitalets/playwright-bdd-example).## Community
Let's make playwright-bdd awesome together!* Open an [issue on GitHub](https://github.com/vitalets/playwright-bdd/issues) to report bug or propose new feature
* 🆕 Join [Playwright-bdd Discord Server](https://discord.gg/5rwa7TAGUr) to connect with other developers, ask questions and share your experience or showcase## Changelog
Check out the latest changes in the [CHANGELOG.md](https://vitalets.github.io/playwright-bdd/#/changelog).## Contributing
Your contributions are welcome! Review [DEVELOPMENT.md](https://github.com/vitalets/playwright-bdd/blob/main/DEVELOPMENT.md) for playwright-bdd local setup and development.## Sponsors
Great thanks to the sponsors for supporting playwright-bdd project ❤️ [Become a sponsor](https://github.com/sponsors/vitalets)## How to make BDD valuable for my project?
Have a look on [this section](https://vitalets.github.io/playwright-bdd/#/faq?id=how-to-make-bdd-valuable-for-my-project).
## My other Playwright tools
* [playwright-network-cache](https://github.com/vitalets/playwright-network-cache) - Speed up Playwright tests by caching network requests on the filesystem.
* [playwright-magic-steps](https://github.com/vitalets/playwright-magic-steps) - Auto-transform JavaScript comments into Playwright steps.## License
[MIT](https://github.com/vitalets/playwright-bdd/blob/main/LICENSE)