针对特定内核的Behat SymfonyExtension配置

时间:2016-05-03 11:56:56

标签: symfony behat

SpecificKernel.php下我的应用app/SpecificKernel.php有一个特定的内核,我需要在behat.yml中指定使用此内核而不是默认内核。

default:
    suites:
        first:
            type: symfony_bundle
            bundle: MyBundle
            mink_session: selenium2
            contexts:
                - MyBundle\Features\Context\FeatureContext

            # Should be placed somewhere in this file, but I do not know where
            #symfony2_extension:
                #kernel:
                    #path: app/SpecificKernel.php
    extensions:
        Behat\Symfony2Extension: ~
        Behat\MinkExtension:
            base_url:  http://www.example.local
            sessions:
                default:
                    symfony2: ~
                selenium2:
                    selenium2: ~

SymfonyExtension的源代码我发现它应该在symfony2_extension-> kernel->路径中设置,但问题是我不知道在哪里放这个配置,我试过多种方式每次默认错误Class AppKernel does not exist到达时。

您能否建议将symfony2_extension configurations放在behat.yml文件中的哪个位置。

1 个答案:

答案 0 :(得分:1)

在工作2小时后,我最终设法做到了,问题是您不仅应该指定path,还要指定class。最后我得到了这样的东西:

default:
    suites:
        reglements:
            type: symfony_bundle
            bundle: MyBundle
            mink_session: selenium2
            contexts:
                - MyBundle\Features\Context\FeatureContext
    extensions:
        Behat\Symfony2Extension:
            kernel:
                path: app/SpecificKernel.php
                class: SpecificKernel
        Behat\MinkExtension:
            base_url:  http://www.example.local
            sessions:
                default:
                    symfony2: ~
                selenium2:
                    selenium2: ~