Behatch contexts provide most common Behat tests.
This extension requires:
- Behat 3+
- Mink
- Mink extension
- 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: ~- 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.
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:xmlThis project is self-tested, you can explore the features directory to find some examples.
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
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"

