与貂皮相媲美

时间:2011-06-02 14:49:43

标签: php bdd behat

有谁知道如何成功配置Mink以使用Behat?如果有人不知道,Behat是用于PHP的BDD(行为驱动开发)框架,Mink提供了一个浏览器模拟器抽象层来测试。

您可以在http://behat.org/和Mink https://github.com/Behat/Minkhttp://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 ,也会发生这种情况。

希望任何人都可以告诉我我哪里出错了,如果问题中有任何我不清楚的地方,请告诉我。非常感谢。

1 个答案:

答案 0 :(得分:1)

这是:https://github.com/knplabs/mink-demo; - )

基本上,使用Mink,您不需要创建或要求Goutte客户端由Mink自动完成。您的$ world也得到了增强,现在您可以在步骤定义中获得mink会话:

$downloadsLink = $world->getSession()->getPage()->findLink('downloads');

另外,你忘了包含PHPUnit!

请参阅mink-demo以获得很好的示例; - )