有谁知道如何成功配置Mink以使用Behat?如果有人不知道,Behat是用于PHP的BDD(行为驱动开发)框架,Mink提供了一个浏览器模拟器抽象层来测试。
您可以在http://behat.org/和Mink https://github.com/Behat/Mink或http://www.knplabs.com/fr/blog/one-mink-to-rule-them-all
了解更多有关Behat的信息基本上我按照http://www.knplabs.com/fr/blog/one-mink-to-rule-them-all的说明配置我的Mink以使用我的Behat。我的 behat.yml ,位于Behat文件夹内的那个,而不是Mink文件夹,如下所示:
default:
paths:
features: %%BEHAT_CONFIG_PATH%%/features
formatter:
name: progress
pretty:
formatter:
name: pretty
parameters:
multiline_arguments: false
default:
environment:
parameters:
start_url: http://localhost/
imports:
- mink/behat.yml
我的功能/ support / boostrap.php
中还有以下代码require_once 'mink/autoload.php';
但是,在 features / support / env.php
中包含以下代码$world->client = new \Goutte\Client;
当我使用behat命令时,会在终端(OSX)中给我一个 PHP致命错误:类'Goutte \ Client'未找到。即使我的 behat / Mink / Vendor / Goutte 文件夹中有 goutte.phar ,也会发生这种情况。
希望任何人都可以告诉我我哪里出错了,如果问题中有任何我不清楚的地方,请告诉我。非常感谢。
答案 0 :(得分:1)
这是:https://github.com/knplabs/mink-demo; - )
基本上,使用Mink,您不需要创建或要求Goutte客户端由Mink自动完成。您的$ world也得到了增强,现在您可以在步骤定义中获得mink会话:
$downloadsLink = $world->getSession()->getPage()->findLink('downloads');
另外,你忘了包含PHPUnit!
请参阅mink-demo以获得很好的示例; - )