This started as an idea of grouping on one page all tools and extensions available for Behat and any other StoryBDD tools available in PHP. This is not an exhaustive list of all available extensions - that's something Google was built for - but rather a list of extensions I have personally used and found useful. Feel free to contribute, my goal is to make the list comprehensive and useful for others, too.
- Behat Step Through - Helps you debug Behat scenarios by stopping execution in between steps
- Friends Of Behat:
- PerformanceExtension - Accelerates Behat using features available only for newer PHP versions.
- SymfonyExtension - [WIP] Integrates Behat with Symfony (both 2 and 3).
- MinkExtension - an abstraction layer that allows Behat to communicate with Selenium and other headless browsers
- VersionBasedTestSkipper - Skip Scenarios or Features based on PHP version via annotations
- Behat-Screenshot - Helps you debug Behat scenarios by taking screenshot of the failing steps / scenarios
- Behat-BrowserInitialiser - Helps configure the browser for behat scenarios
- Behat-StepTimeLogger - Helps you find slow behat scenario steps by logging the step times
- Behat-Magento2Init - Provides access to the Magento2 object manager and allows you to change Magento2 config settings temporarly when Behat is running
- Behatch Contexts - A series of predefined contexts that help you better handle browser, screenshots, xml and tables
- Behatch Notifiers - A behat plugin that can be configured to send notifications over Slack. For example: when something failed in CI.
-
Behat TableNodes – the missing manual - A blog detailing some of the TableNode options within Behat.
-
A practical approach on BDD with Sylius (components), Behat and PHPSpec:
The repository is available here: https://github.com/bitbag-commerce/sylius-bdd. In my opinion, the simplicity of this tutorial makes it good for beginners that want to get a grasp of how to approach a task / project / challenge using this metodology.
Though, to my taste, I would also like to find something that brings more to the table. More like "building a library" or "a system that handles a book borrowing process". Looking forward for more
-
Behat & Symfony 4 - Some practical examples of how to use Behat with Symfony4.
Mainly because today I was busting my mind trying to remember what was the name of the extension that allowed you to pause a behat instance until you hit enter in the terminal.
Thanks to Ciaran McNulty I reached an even better version of what I know it was possible and then it struck me: let's create a list of all useful Behat resources so that next time I need something, I can easily find it there.
Last weekend, I attended BgPHP Conference where the keynote of Cal Evans was about defining open source contributors in 3 main roles:
- groupies
- roadies
- rockstars
I have openly admitted then of being a groupie of Sylius. Now I thought of applying for the same statue for Behat. Because... why not?