Cloudinary image driver for bex/behat-screenshot behat extension
Install by adding to your
composer require --dev ezsystems/behat-screenshot-image-driver-cloudinary
Enable the image driver in the Behat-ScreenshotExtension's config in
default: extensions: Bex\Behat\ScreenshotExtension: active_image_drivers: cloudinary
You can choose how to upload files:
- signed upload: export the Cloudinary values (cloud name, API Key and API Secret) as environmental variables
- unsigned upload: set the cloud_name and preset in configuration
default: extensions: Bex\Behat\ScreenshotExtension: active_image_drivers: cloudinary image_drivers: cloudinary: screenshot_directory: /tmp/behat-screenshot/ cloud_name: X preset: Y
- mode: if set to
cithen will work only on CI environments, not locally. Defaults to
- limit: specifies the number of screenshots that can be taken in a single Behat run. It's based on number of files in
screenshot_directory, so make sure that the folder is empty before the tests are run and cleaned only after the whole suite, not after every test.
When a step fails a screenshot will be taken and uploaded to Cloudinary. URL of the uploaded image will be displayed in the Behat log.
Scenario: # features/feature.feature:2 Given I have a step # FeatureContext::passingStep() When I have a failing step # FeatureContext::failingStep() Error (Exception) Screenshot has been taken. Open image at https://res.cloudinary.com/cloud_name/image/upload/IMAGE_LINK.png Then I should have a skipped step # FeatureContext::skippedStep()