2bepublished / behat-responsive-features-extension
A behat extension that enables features to be enabled/disabled for different screen sizes.
dev-master
2015-03-11 14:30 UTC
Requires
- behat/behat: ~3.0
Requires (Dev)
- phpspec/phpspec: ~2.1
This package is not auto-updated.
Last update: 2024-10-26 18:01:06 UTC
README
- Brought to you by [2bePUBLISHED]
- Developed by Christoph Rosse
About
A behat extension that enables features to be enabled/disabled for different screen sizes.
Installation
BehatResponsiveFeaturesExtension can be installed via composer
composer require "2bepublished/behat-responsive-features-extension"
Usage
Step 1: Activate the extension in your behat.yml
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.
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.
@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.
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.