将browserstack功能添加到初学者behat web测试教程

时间:2016-07-29 11:29:07

标签: behat browserstack

作为一名behat(和browserstack)初学者,我已经关注了初学者behat网络功能tutorial。我有一个问题,通过在stackoverflow帖子中添加“fabpot / goutte”:“1.*@stable”来解决这个问题。现在有一个工作教程,我想让它在browserstack上运行。然而,我所遵循的各种指南,在修改我的behat.yml时都会导致各种不同的错误。 (我能够使git example工作,但无法使我的教程示例适应工作)。这是我目前的behat文件。

composer.json:
{
    "require": {
        "behat/behat": "~2.5",
        "behat/mink-extension": "~1.3",
        "behat/mink-goutte-driver": "~1.2",
        "behat/mink-selenium2-driver": "~1.2",
        "fabpot/goutte": "1.*@stable"
    },
    "config": {
        "bin-dir": "bin/"
    }
}


behat.yml:
default:
    extensions:
        Behat\MinkExtension\Extension:
            base_url:
            goutte: ~
            selenium2: ~




testscenario.feature:
Feature: ...

@javascipt
scenario: ...
steps...



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;

use Behat\MinkExtension\Context\MinkContext;

class FeatureContext extends MinkContext
{...working functions...}

现在这里有一个git behat.yml的例子,对于我来说是开箱即用的git repo:

default:
    extensions:
        Behat\MinkExtension:
            sessions:
                my_session:                
                    browser_stack: 
                        username: "username"
                        access_key: "accesskey"
                        capabilities: {"browser" :"Chrome", "os": "OS X", "os_version": "Yosemite", "browserstack-debug": true}

但如果我尝试在我的项目中使用git behat.yml,我会收到错误:

PHP Warning:  require(Behat\MinkExtension): failed to open stream: No such file or directory

如果我将behat.yml修改为state:

extensions:
Behat\MinkExtension\Extension:

然后我得到:

 [Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]
 Unrecognized option "sessions" under "behat.extensions.behat_minkextension_extension"

我需要更改什么才能解决这个问题并让我的behat教程项目与Browserstack一起使用?非常感谢。

1 个答案:

答案 0 :(得分:0)

这对我有用(behat 2.4):

default:
 extensions:
   Behat\MinkExtension\Extension:
    base_url: my_url
    goutte: ~
    selenium2:
     capabilities: { "capability_name": "cap_value" }

请注意,硒可能无法识别某些BS功能。 您也可以查看此回购:behat-mink-browserstack