BehatResponsiveFeaturesExtension
, (*1)
About
A behat extension that enables features to be enabled/disabled for different screen sizes., (*2)
Installation
BehatResponsiveFeaturesExtension can be installed via composer, (*3)
composer require "2bepublished/behat-responsive-features-extension"
Usage
Step 1: Activate the extension in your behat.yml, (*4)
default:
suites:
...
extensions:
Pub\BehatResponsiveFeaturesExtension\Extension: ~
Step 2: Define a suite that uses responsive features.
In the step you'll also have to define the screen-width that this suite will use., (*5)
default:
suites:
ios_7_iphone5:
paths: [ %paths.base%/features/ ]
contexts: [ Feature ]
type: pub_responsive_suite # required: this instructs Behat to use the responsive suite.
screen-width: 320 # required: this sets the width for that suite
mink_session: ios_7_iphone5 # optional: the mink session is optional if you don't use mink.
Step 3: Use the width tags inside your feature definitions:
* @min-width:xxx - takes min-width in pixels
* @all-widths - if want a feature to run on all responsive-suites use this tag., (*6)
@all-widths
Feature: A very important feature
In order to see this very important feature
As a User
I don't need a big screen
@min-width:500
Feature: A very big feature
In order to see this very big feature
As a User
I need a screen with at least 500px
For a bigger example configuration using browser-stack please have a look at the example configuration., (*7)
Features
- Tag Features with a minimal required width so they are not executed on test-suites with smaller screens.
Limitations
- Only width filtering is currently allowed
- Features that should execute on all configurations need the
@all-widths
tag
LICENSE
See LICENSE
file., (*8)