miiimooo / behat-tools
Behat tools
Installs: 53 328
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 6
Open Issues: 2
Type:package
Requires
- php: >=5.5
- behat/behat: ^3.0.13
- behat/mink-extension: ^2.3.1
- sabre/dav: ^3.2
Requires (Dev)
- behat/mink-goutte-driver: ^1.1
README
composer require miiimooo/behat-tools
ParagraphsContext
Support for creating paragraph content in Drupal 8 (only)
Enabling
behat.yml
default: suites: default: contexts: - miiimooo\BehatTools\Context\ParagraphsContext
Support for @BeforeParagraphCreate
and @AfterParagraphCreate
in your own contexts by adding the new extension in behat.yml
extensions: miiimooo\BehatTools\MiiimoooExtension: ~
Usage
In your feature first define the paragraph and name it, then use the name to reference it in a field that references paragraphs:
Feature: Content @api Scenario: Paragraph creation through Drupal 8 API Given a "my_paragraph_type" paragraph named "my_arbitrary_name": | title | Lorem ipsum| Given I am viewing a "page" content: | title | Dolor sed | | field_paragraphs | my_arbitrary_name |
DavScreenshotFailureContext
The DavScreenshotFailureContext triggers on a failed stop in a Behat scenario and creates a screenshot in the configured screenshots folder.
Often in CI systems all created containers and artifacts are destroyed at the end of a CI run.
The DavScreenshotFailureContext uploads the screenshots to a WebDAV server.
behat.yml
default: suites: default: contexts: - miiimooo\BehatTools\Context\DavScreenshotFailureContext ... failure_path: %paths.base%/screenshots
Environment
- WEBDAV_HOST
- WEBDAV_FOLDER
- WEBDAV_USERNAME
- WEBDAV_PASSWORD
- DRONE_REPO_NAME
- DRONE_BUILD_NUMBER
- CI
CI has to be set to "drone" for the web dav upload to happen
The URI where the screenshot will be saved is constructed as:
WEBDAV_HOST/WEBDAV_FOLDER/DRONE_REPO_NAME-DRONE_BUILD_NUMBER-FEATURE-LINENUMBER-TIMESTAMP.(png/html)
JavascriptOnErrorContext
The JavascriptOnErrorContext triggers on a failed stop in a Behat scenario and prints out any Javascript errors.
behat.yml
default: suites: default: contexts: - miiimooo\BehatTools\Context\JavascriptOnErrorContext