私はいくつかのサイトをテストするためにBehatとMinkを使用しています。それらのうちの2つは、シングルサインオンを使用するので、私のテストの一つは、一つのサイトにログインを含み、第二のサイトに行き、私がログインしていますチェック異なる環境(異なるURL)で同じテストで2つのサイトをテストする方法
これは、このbehatコードでacomplishedされています。
Feature: SSO
In order to login in all related sites
As a anonymous user
I want to login in just one site
Scenario: Login with normal user
Given I am on "/user/login"
When I fill in "name" with "username"
And I fill in "pass" with "password"
And I press "login"
Then I should see "My account"
And I go to "http://server.developer1.workstations/"
Then I should see "Close session"
これは動作しますが、問題は、この行です:
And I go to "http://server.developer1.workstations/"
私たちは、異なるURLと異なる環境(ローカル開発者、DEV、stagging)を持っているので、私はすべてのマシンで動作テストを書くことはできません。私は各マシンの異なるbase_url設定を持つことができるので、最初のサーバーはOKですが、2番目のサーバーURLを変更するすべての機能ファイルを書き換える代わりに、2番目のサーバー を一般設定として設定する方法が見つかりません。
変数、定数、またはマシンごとに異なるファイルに保存できる何かを宣言する方法はありますか?それはすることができますこれを解決する
無制限の 'slave1_url'、' slave2_url'などを作成する代わりに、 'slave_url'パラメータを作成し、それをbehatプロファイルを使ってオーバーロードします。次に、対象の環境で異なるプロファイルを実行します。 –