0

次の問題に遭遇した人はいますか: behat は明らかに正常に動作しますが、事前定義された手順はありません: 結果

\tests> php .\behat\behat.phar -di

ファイル FeatureContext.php にステップが定義されていなくても空です。私の Behat バージョンは 2.4.0 で、PHAR の助けを借りてインストールされています。PHP バージョンは 5.4.9 です。以下は、私のインストールの詳細です。ツリー構造は次のとおりです。

tests> dir
Directory: xxx\tests
Mode      Name                                       
d----     behat                                   
d----     features                                   
-a---     bootstrap.php                                   
-a---     phpunit.xml                                   
-a---     WebTestCase.php   

behat フォルダーには、次のファイルが含まれています。

tests> dir .\behat
Directory: xxx\tests\behat
Mode       Name
-a---     behat.phar                                   
-a---     mink.phar                                   
-a---     mink_extension.phar

機能フォルダにはbootstrapディレクトリしかありません

   tests> dir .\features
Directory: xxx\tests\features
    Mode     Name
    d----   bootstrap   

次の内容を持つ唯一のファイル FeatureContext.php を含む

<?php

use Behat\Behat\Context\ClosuredContextInterface,
    Behat\Behat\Context\TranslatedContextInterface,
    Behat\Behat\Context\BehatContext,
    Behat\Behat\Exception\PendingException;
use Behat\Gherkin\Node\PyStringNode,
    Behat\Gherkin\Node\TableNode;

class FeatureContext extends BehatContext
{
    public function __construct(array $parameters)
    {
        // Initialize your context here
    }
}
4

1 に答える 1

1

Behat 自体には、定義済みの手順はありません。

mink 拡張機能をダウンロードしたことがわかります。それに付随するステップを探しているのではないでしょうか (それらはMinkContextで定義されています)。behat.ymlを貼り付けていないため、実際に拡張機能を有効にしたかどうかはわかりません。詳細については、公式ドキュメントに従ってください。

注: MinkContextで定義されたステップは良い出発点ですが、Behat を使い終わったら、独自のステップを書き始め、ビジネス ドメインの言語を使用する必要があります。デフォルトのMinkContextステップがドメイン言語を反映することはほとんどありません。

于 2013-02-28T15:55:07.533 に答える