7c07f01d59
An actor plays the role of an end-user in the test scenario. As such, each actor has its own web browser session used to perform the actions specified by the steps of the scenario. Only one actor is active at a time in a test scenario, and the current actor can be set through the "I act as XXX" step; from then on, all the steps are performed by that actor, until a different actor is set by calling "I act as XXX" again. If no actor was explicitly set in a scenario then the default actor, unsurprisingly named "default", is the one used. The ActorContext class is added to provide automatic support for all that. To use the ActorContext, besides adding it to the context list in "behat.yml", a Mink session for each actor used in the features must be specified in "behat.yml". Once done other Contexts just need to implement the ActorAwareInterface (which can be done simply by using the ActorAware trait) to have access to the current Actor object of the test scenario; as the Actor object provides its own session other Contexts do not need to extend from RawMinkContext. The ActorContext is itself a RawMinkContext, so it automatically receives the base URL of the Nextcloud test server run by NextcloudTestServerContext and propagates that base URL to all the actors. Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
17 lines
332 B
YAML
17 lines
332 B
YAML
default:
|
|
autoload:
|
|
'': %paths.base%/../features/bootstrap
|
|
suites:
|
|
default:
|
|
paths:
|
|
- %paths.base%/../features
|
|
contexts:
|
|
- ActorContext
|
|
- NextcloudTestServerContext
|
|
|
|
- FeatureContext
|
|
extensions:
|
|
Behat\MinkExtension:
|
|
sessions:
|
|
default:
|
|
selenium2: ~
|