Behat Zend framework integration
Integration Behat ^3.1 with Zend\Mvc\ApplicationInterface
.
This should allow integrate with Zend framework v2.* and v3.*., (*1)
Installing extension
The easiest way to install is by using Composer:, (*2)
$> curl -sS https://getcomposer.org/installer | php
$> php composer.phar require alteris/behat-zendframework-extension='~1.0'
or composer.json, (*3)
"require": {
"alteris/behat-zendframework-extension": "~1.0"
},
Configuration
You can then activate the extension in your behat.yml
:, (*4)
default:
# ...
extensions:
Alteris\BehatZendframeworkExtension\ServiceContainer\Extension:
configuration: PATH_TO_application.config.php
Injecting Application
Your context need to implement Alteris\BehatZendframeworkExtension\Context\ContextAwareInterface
and will be intialized with Zend\Mcv\ApplicationInterface
;, (*5)
Injecting Services
The extension will automatically convert parameters injected into a context. You need to have set alias/name starting with '@':, (*6)
default:
suites:
default:
contexts:
- FeatureContext:
testService: '@testService'
extensions:
Alteris\BehatZendframeworkExtension\ServiceContainer\Extension:
configuration: PATH_TO_application.config.php
The FeatureContext will then be initialized with the service from the Zend Framework container:, (*7)
<?php
namespace FeatureContext;
use Behat\Behat\Context\Context;
use ModuleTest\Service\TestService;
class FeatureContext implements Context
{
public function __construct(TestService $testService)
{
//Service from Zend\Mvc\Application
}
}
Examples
Versioning
Staring version 1.0.0
, will follow Semantic Versioning v2.0.0., (*8)
Contributors