環境によってbehatでテストするURLが変わることがあるので、base_url
はbehat.yml
に決め打ちしたくないということもあると思います。
そんな時のために、BEHAT_PARAMS
という環境にJSON形式でデータを渡すことができます。
JSONを用意
tests/behat.json
{
"extensions" : {
"Behat\\MinkExtension" : {
"base_url" : "http://vccw.dev/"
}
}
}
環境変数を設定
export BEHAT_PARAMS="`cat tests/behat.json`"
ダイレクトに値を指定しても良いのですが、ここにJSONを書くのがあまり好きでないので展開させてます。
環境変数で定義した内容はbehat.yml
から除外する
behat.yml
default:
suites:
default:
paths:
- %paths.base%/features
contexts:
- FeatureContext
- VCCW\Behat\Mink\WordPressExtension\Context\WordPressContext
- Behat\MinkExtension\Context\MinkContext
extensions:
VCCW\Behat\Mink\WordPressExtension:
roles:
administrator:
username: admin
password: admin
Behat\MinkExtension:
#base_url: http://vccw.dev
default_session: default
sessions:
default:
selenium2:
wd_host: http://127.0.0.1:4444/wd/hub
goutte:
goutte: ~
behat.yml
側でも定義した場合、behat.yml
の値が優先される様子なので要注意です。