server/tests/acceptance/config/behat.yml
Daniel Calviño Sánchez d70b6bc94b Set "wd_host" directly in "behat.yml" instead of through "BEHAT_PARAMS"
The "wd_host" parameter of Selenium2 sessions specify the URL used by
the Selenium driver to connect with the Selenium server. Thus, when the
Selenium server is at a different host or port than the default one (for
example, when run on Drone) the "wd_host" parameter must be set for each
of the Selenium2 sessions defined in "behat.yml".

The "BEHAT_PARAMS" environment variable, which extends the "behat.yml"
configuration file, was used for that. However, this required adding to
the "BEHAT_PARAMS" in "run-local.sh" each new session added to
"behat.yml", including those added in the acceptance tests of apps.

To address that limitation, this commit introduces a simulated variable,
"selenium.server"; just before the acceptance tests are run the
"selenium.server" variable in the "wd_host" parameter is replaced in the
"behat.yml" file used by the acceptance tests. Note that the file that
is modified is the one inside the Docker container used to run the
acceptance tests, so the original file is not touched.

Note that a simulated variable is needed because Behat does not support
overridding nor setting configuration parameters with environment
variables.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-06-22 19:46:44 +02:00

44 lines
1.1 KiB
YAML

default:
suites:
default:
paths:
- %paths.base%/../features
contexts:
- ActorContext
- NextcloudTestServerContext
- AppNavigationContext
- AppSettingsContext
- AppsManagementContext
- CommentsAppContext
- ContactsMenuContext
- DialogContext
- FeatureContext
- FileListContext
- FilesAppContext
- FilesSharingAppContext
- LoginPageContext
- NotificationContext
- SettingsContext
- SettingsMenuContext
- ThemingAppContext
- UsersSettingsContext
extensions:
Behat\MinkExtension:
sessions:
default:
selenium2:
wd_host: %selenium.server%
John:
selenium2:
wd_host: %selenium.server%
Jane:
selenium2:
wd_host: %selenium.server%
Rubeus:
# Rubeus uses a browser that has CSS grid support.
selenium2:
wd_host: %selenium.server%
capabilities:
firefox:
profile: %paths.base%/firefox-profiles/css-grid-enabled.zip