robertfausk / contexts
Behatch contexts
Installs: 972
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 203
Language:Gherkin
Requires
- php: >=5.5
- behat/behat: ^3.0.13
- friends-of-behat/mink-extension: ^2.3.1
- justinrainbow/json-schema: ^5.0
- symfony/dom-crawler: ^2.4|^3.0|^4.0|^5.0
- symfony/http-foundation: ^2.3|^3.0|^4.0|^5.0
- symfony/property-access: ^2.3|^3.0|^4.0|^5.0
Requires (Dev)
- atoum/atoum: ^2.8|^3.0
- behat/mink-goutte-driver: ^1.1
- behat/mink-selenium2-driver: ^1.4@dev
- fabpot/goutte: ^3.2
- guzzlehttp/guzzle: ^6.3
Replaces
- sanpi/behatch-contexts: 3.3.0
README
Behatch contexts provide most common Behat tests.
Installation
This extension requires:
- Behat 3+
- Mink
- Mink extension
Project dependency
- Install Composer
- Require the package with Composer:
$ composer require --dev behatch/contexts
- Activate extension by specifying its class in your
behat.yml
:
# behat.yml default: # ... extensions: Behatch\Extension: ~
Project bootstraping
- Download the Behatch skeleton with composer:
$ php composer.phar create-project behatch/skeleton
Browser, json, table and rest step need a mink configuration, see Mink extension for more information.
Usage
In behat.yml
, enable desired contexts:
default: suites: default: contexts: - behatch:context:browser - behatch:context:debug - behatch:context:system - behatch:context:json - behatch:context:table - behatch:context:rest - behatch:context:xml
Examples
This project is self-tested, you can explore the features directory to find some examples.
Configuration
browser
- more browser related steps (like mink)timeout
- default timeout
debug
- helper steps for debuggingscreenshotDir
- the directory where store screenshots
system
- shell related stepsroot
- the root directory of the filesystem
json
- JSON related stepsevaluationMode
- javascript "foo.bar" or php "foo->bar"
table
- play with HTML the tablesrest
- send GET, POST, ... requests and test the HTTP headersxml
- XML related steps
Configuration Example
For example, if you want to change default directory to screenshots - you can do it this way:
default: suites: default: contexts: - behatch:context:debug: screenshotDir: "var"