【问题标题】:Behat Quits Unexpectedly贝哈特意外退出
【发布时间】:2014-10-30 20:32:13
【问题描述】:

我在这里对我从 behat 看到的这种非常奇怪的行为保持空白。

当我运行最基本的测试时,behat 完全停止。

示例输出:

$ php bin/behat src/App/CoreBundle/Features/home.feature --suite troubleshoot_suite
Feature: Homepage
    In order to establish the application's value
    As an End User
    I need to be able to see a introduction page

  Scenario: Load Homepage
$ ~/Sites/

...它就挂在那里!

我有 Behat 3.0.14 版,并且一直在运行没有问题的测试。

这是我的behat.yml

default:
    suites:
        core_suite:
            type: symfony_bundle
            bundle: 'AppCoreBundle'
            contexts:
                - App\CoreBundle\Features\Context\FeatureContext
                - Kf\KitBundle\Behat\FOSUserContext
                - Behat\MinkExtension\Context\MinkContext
        troubleshoot_suite:
            type: symfony_bundle
            bundle: 'AppCoreBundle'
            contexts:
                - App\CoreBundle\Features\Context\TestContext

    extensions:
        Behat\Symfony2Extension: ~
        Behat\MinkExtension:
            sessions:
                default:
                    symfony2: ~
                javascript:
                    selenium2: ~
            show_auto:    false
            base_url: http://app.dev

我的TestContext.php

<?php

namespace App\CoreBundle\Features\Context;

use Kf\KitBundle\Behat\DefaultContext,
    Kf\KitBundle\Behat\WebContext;
use App\CoreBundle\Entity\Dog,
    App\CoreBundle\Entity\Park,
    App\CoreBundle\Entity\CheckIn,
    App\CoreBundle\Entity\DogBreed;
use Behat\Gherkin\Node\TableNode;
use Behat\MinkExtension\Context\MinkContext;

class TestContext extends MinkContext
{
    /**
     * @When /^I go to the website root$/
     */
    public function iGoToTheWebsiteRoot()
    {
        $this->getSession()->visit('/');
    }
}

还有我正在尝试运行的 home.feature 文件:

Feature: Homepage
    In order to establish the application's value
    As an End User
    I need to be able to see a introduction page

    Scenario: Load Homepage
        Given I go to the website root
        Then I should see "Something expected."
        And I should not see "Something unexpected."

有没有人遇到过类似的问题或行为?我的test.log 也没什么好激动的:

[2014-10-23 12:58:04] request.INFO: Matched route "app_core_default_index" (parameters: "_controller": "App\CoreBundle\Controller\DefaultController::indexAction", "_route": "app_core_default_index") [] []
[2014-10-23 12:58:04] security.INFO: Populated SecurityContext with an anonymous Token [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener::injectLogger". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener::injectLogger". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ErrorsLoggerListener::injectLogger". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\ProfilerListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Bundle\FrameworkBundle\EventListener\TestSessionListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Bundle\FrameworkBundle\EventListener\SessionListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\FragmentListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\RouterListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\HttpKernel\EventListener\LocaleListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "FOS\RestBundle\EventListener\BodyListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Symfony\Component\Security\Http\Firewall::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Knp\Bundle\MenuBundle\EventListener\VoterInitializerListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Knp\Bundle\PaginatorBundle\Subscriber\SlidingPaginationSubscriber::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Nelmio\ApiDocBundle\EventListener\RequestListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.request" to listener "Stof\DoctrineExtensionsBundle\EventListener\BlameListener::onKernelRequest". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "App\UserBundle\EventListener\UserIncompleteListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "FOS\RestBundle\EventListener\ParamFetcherListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Symfony\Bundle\FrameworkBundle\DataCollector\RouterDataCollector::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Symfony\Component\HttpKernel\DataCollector\RequestDataCollector::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ControllerListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\ParamConverterListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\HttpCacheListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "Sensio\Bundle\FrameworkExtraBundle\EventListener\SecurityListener::onKernelController". [] []
[2014-10-23 12:58:04] event.DEBUG: Notified event "kernel.controller" to listener "FOS\RestBundle\EventListener\ViewResponseListener::onKernelController". [] []

【问题讨论】:

    标签: php symfony behat


    【解决方案1】:

    可能缺少一些非常明显的东西,因为您提供的所有内容看起来都不错。 Behat 提供了一个--verbose 选项以获取详细的调试信息。尝试使用它来解决问题。

    php bin/behat src/App/CoreBundle/Features/home.feature --verbose --suite troubleshoot_suite 
    

    【讨论】:

      【解决方案2】:

      正如@IanBytchek 上面提到的,这是一个非常明显的问题。

      原来是我的 PHP 版本。

      我一直在尝试使用 intl 扩展名重新编译它,但我无法确定哪里出错了,但是当我运行 /usr/bin/php bin/behat ... 以忽略我拙劣的 MAMP 版本的 PHP 时,我的测试成功了正如预期的那样。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-27
        • 2021-03-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多