有誰知道如何成功配置Mink與Behat合作?如果有人不知道,Behat是PHP的BDD(行爲驅動開發)框架,Mink提供了一個瀏覽器模擬器抽象層來測試。Behat與水貂
你可以找到在http://behat.org/和水貂更多貝哈特在https://github.com/Behat/Mink或http://www.knplabs.com/fr/blog/one-mink-to-rule-them-all
基本上我跟着指示在http://www.knplabs.com/fr/blog/one-mink-to-rule-them-all我水貂配置與我貝哈特工作。我behat.yml,一個位於貝哈特文件夾,而不是水貂文件夾內,如下:
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
我也有我的功能下面的代碼/支持/ boostrap.php
require_once 'mink/autoload.php';
然而,有我在功能/支持/ env.php下面的代碼
$world->client = new \Goutte\Client;
會給我一個PHP致命錯誤:當我使用behat命令時,終端(OSX)中找不到類'Goutte \ Client'。即使我的goutte.phar在我的behat/Mink/Vendor/Goutte文件夾中,也會發生這種情況。
希望任何人都可以在我出錯的地方給我啓發,如果問題中有任何部分我不清楚,請告訴我。非常感謝。
再一次:對於沒有Mink文檔感到抱歉。他們是在製品;-) – everzet 2011-06-02 16:01:00
非常感謝提供的偉大的信息=)只是另一個問題突然出現了我雖然〜我得到這個錯誤,當我在演示中使用behat命令 - > PHP警告:preg_match():未知修飾符' w'在/usr/local/pear/share/pear/behat/src/Behat/Behat/Definition/DefinitionDispatcher.php在185線'鑑於我在/ wiki/Main_Page'。這可能是由於它的步驟定義是:$ steps-> Given('/ ^我在/ wiki/Main_Page $ /',函數($ world){//拋出new \ Behat \ Behat \ Exception \ Pending (); });或者我認爲這可能是我的一些配置錯誤。非常感謝。 – 2011-06-03 00:30:26
我發現了我得到這個錯誤的原因。這是由於步驟定義中的正則表達式不正確。該行的步驟定義應爲:$ steps-> Given('/ ^我在\/wiki \/Main_Page $ /',函數($ world)...以便將wiki的斜槓視爲錯誤:調用未定義的方法Behat \ Behat \ Environment \ Environment :: getSession在步驟/步驟2中調用。但是,現在錯誤消失了,我收到一條新的錯誤消息, ajax.php 12行,我有$ world-> getSession() - > wait(5000,「$('。suggestions-results')。children()。length> 0」); – 2011-06-03 02:27:50