teoble / behat-lumen-extension
Lumen extension for Behat
Installs: 4 699
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 0
Open Issues: 1
Type:behat-extension
Requires
- php: >=5.4
- behat/behat: ~3.0
- behat/mink-browserkit-driver: ~1.2
- laravel/lumen-framework: >=5.2
Requires (Dev)
- behat/mink-extension: ~2.0
- symfony/symfony: ~2.6
This package is not auto-updated.
Last update: 2024-11-10 06:07:12 UTC
README
The purpose of the project is to make available the behat-lumen-extension for Lumen higher versions than v5.1, since that in the original project it works on in v5.2.
Thanks for Aris Buzachis for developing suching an helping tool as behat-lumen-extension
1. Install Dependencies
As always, we need to pull in some dependencies through Composer.
composer require behat/behat behat/mink behat/mink-extension teoble/behat-lumen-extension --dev
This will give us access to Behat, Mink, and, of course, the Lumen extension.
If you want to use a custom .env file for the Behat tests you will need to modify bootstrap/app.php
like this:
try { (new Dotenv\Dotenv(__DIR__.'/../', isset($dotEnvFile) ?: '.env'))->load(); } catch (Dotenv\Exception\InvalidPathException $e) { // }
2. Create the behat.yml configuration file
Next, within your project root, create a behat.yml
file, and add:
default: autoload: [ %paths.base%/tests/functional/contexts ] extensions: Arisro\Behat\ServiceContainer\LumenExtension: # env_file: .env.behat Behat\MinkExtension: default_session: lumen lumen: ~ suites: default: paths: [ %paths.base%/tests/functional/features ] filters: contexts: - FeatureContext
Optinally, you can specify a different .env file for your functional tests (with a test DB for example).
3. Write Some Features
You have a very small example here https://github.com/arisro/behat-lumen-example.
Note: if you want to leverage some of the Mink helpers in your FeatureContext
file, then be sure to extend Behat\MinkExtension\Context\MinkContext
.