作为一名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一起使用?非常感谢。
答案 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