を見つけていない、私はまた、このフォルダ構造を持つ3.1 Behat - 複数のコンテキスト、二コンテキストクラス
default:
autoload:
#'': %paths.base%/tests/AppBundle/features/user_registration/bootstrap
#'': %paths.base%/tests/AppBundle/features/user_login/bootstrap
[ %paths.base%/tests/AppBundle/features/user_registration/bootstrap, %paths.base%/tests/AppBundle/features/user_login/bootstrap ]
formatters:
progress: ~
suites:
app_features:
#paths:
#features: %paths.base%/tests/AppBundle/features
paths: [ %paths.base%//tests/AppBundle/features ]
contexts:
#- tests\AppBundle\user_registration\UserRegistrationContext
- UserRegistrationContext
- UserLoginContext
#suites:
# default:
# contexts:
# - FeatureContext:
# session: '@session'
extensions:
Behat\Symfony2Extension: ~
behat.ymlなど持っています:UserRegistrationContextクラスで
そのOK、それはエラーは発生しません。それから、UserLoginContextを追加してもそれを見つけることができません。
composer.jsonで "behat/behat": "^ 3.1"を使用しています。
behat.ymlファイルは 'tests'ディレクトリと同じレベルにあります。
UserLoginContextは次のようになります。
<?php
use Behat\Behat\Tester\Exception\PendingException;
use Behat\Behat\Context\Context;
use Behat\Behat\Context\SnippetAcceptingContext;
use Behat\Gherkin\Node\PyStringNode;
use Behat\Gherkin\Node\TableNode;
use Behat\Mink\Driver\GoutteDriver;
use Behat\Mink\Session;
use AppBundle\Controller\UserController;
/**
* Defines application features from the specific context.
*/
class UserLoginContext implements Context, SnippetAcceptingContext
{
private $session;
/**
* Initializes context.
*
* Every scenario gets its own context instance.
* You can also pass arbitrary arguments to the
* context constructor through behat.yml.
*/
public function __construct()
{
// Choose a Mink driver. More about it in later chapters.
$driver = new GoutteDriver();
$this->session = new Session($driver);
}
}
なぜUserLoginContextが見つかりませんか?
更新
私は、私はこのように行うとことに気づいた - 1つの状況、そしてUserLoginContextが発見されたままに:私が見つけた一時的な解決
更新
default:
autoload:
#'': %paths.base%/tests/AppBundle/features/user_registration/bootstrap
'': %paths.base%/tests/AppBundle/features/user_login/bootstrap
#[ %paths.base%/tests/AppBundle/features/user_registration/bootstrap, %paths.base%/tests/AppBundle/features/user_login/bootstrap ]
formatters:
progress: ~
suites:
app_features:
#paths:
#features: %paths.base%/tests/AppBundle/features
paths: [ %paths.base%//tests/AppBundle/features ]
contexts:
#- tests\AppBundle\user_registration\UserRegistrationContext
#- UserRegistrationContext
- UserLoginContext
#suites:
# default:
# contexts:
# - FeatureContext:
# session: '@session'
extensions:
Behat\Symfony2Extension: ~
を - 作成します各コンテキストの新しいプロファイル
user_login:
autoload:
'': %paths.base%/tests/AppBundle/features/user_login/bootstrap
formatters:
progress: ~
suites:
app_features:
paths: [ %paths.base%//tests/AppBundle/features ]
contexts:
- UserLoginContext
extensions:
Behat\Symfony2Extension: ~
をそして--profileパラメータを指定して実行します:しかし、私はそれがどうあるべきか、まだ私が行っている方法を紹介しますないその推測
sudo vendor/behat/behat/bin/behat --profile user_login
小さな問題があるときに私がすることすべてのテストを実行したい、私は多くのコマンドを実行する必要があります。また、設定を繰り返します。まだ良い解決策を待っています。