Download the PHP package integratedexperts/behat-screenshot without Composer

On this page you can find all versions of the php package integratedexperts/behat-screenshot. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package behat-screenshot

Behat extension to create screenshots

[![GitHub Issues](https://img.shields.io/github/issues/drevops/behat-screenshot.svg)](https://github.com/drevops/behat-screenshot/issues) [![GitHub Pull Requests](https://img.shields.io/github/issues-pr/drevops/behat-screenshot.svg)](https://github.com/drevops/behat-screenshot/pulls) [![Test](https://github.com/drevops/behat-screenshot/actions/workflows/test.yml/badge.svg)](https://github.com/drevops/behat-screenshot/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/drevops/behat-screenshot/graph/badge.svg?token=UN930S8FGC)](https://codecov.io/gh/drevops/behat-screenshot) ![GitHub release (latest by date)](https://img.shields.io/github/v/release/drevops/behat-screenshot) ![LICENSE](https://img.shields.io/github/license/drevops/behat-screenshot) ![Renovate](https://img.shields.io/badge/renovate-enabled-green?logo=renovatebot) [![Total Downloads](https://poser.pugx.org/drevops/behat-screenshot/downloads)](https://packagist.org/packages/drevops/behat-screenshot)

Features

Installation

Usage

Example behat.yml with default parameters:

or with parameters:

In your feature:

You can capture fullscreen screenshots:

There are two algorithms available for capturing fullscreen screenshots:

  1. Resize (default): Temporarily resizes the browser window to the full height of the page to capture everything in one screenshot. This is faster, but may cause layout issues on some pages.

  2. Stitch: Takes multiple screenshots while scrolling the page and stitches them together. This produces high-quality results with proper content rendering but requires the GD extension.

You can configure which algorithm to use via the fullscreen_algorithm option:

You may optionally specify the size of the browser window in the screenshot step:

or a file name:

To always capture fullscreen screenshots, even without explicitly using the fullscreen keyword, set the always_fullscreen configuration option to true:

Options

Name Default value Description
dir %paths.base%/screenshots Path to directory to save screenshots. Directory structure will be created if the directory does not exist. Override with BEHAT_SCREENSHOT_DIR env var.
on_failed true Capture screenshot on failed test.
purge false Remove all files from the screenshots directory on each test run. Useful during debugging of tests.
always_fullscreen false Always use fullscreen screenshot capture for all screenshot steps, including regular screenshot steps. When enabled, all I save screenshot steps will behave like I save fullscreen screenshot.
fullscreen_algorithm resize Algorithm to use for fullscreen screenshots. Options: resize (temporarily resizes browser window to full page height) or stitch (captures multiple screenshots while scrolling and stitches them together). The stitch algorithm requires GD extension but produces higher quality results.
info_types url, feature, step, datetime Show additional information on screenshots. Comma-separated list of url, feature, step, datetime, or remove to disable. Ordered as listed.
failed_prefix failed_ Prefix failed screenshots with failed_ string. Useful to distinguish failed and intended screenshots.
filename_pattern {datetime:u}.{feature_file}.feature_{step_line}.{ext} File name pattern for successful assertions.
filename_pattern_failed {datetime:u}.{failed_prefix}{feature_file}.feature_{step_line}.{ext} File name pattern for failed assertions.

File name tokens

Token Substituted with Example value(s)
{ext} The extension of the file captured html or png
{failed_prefix} The value of failed_prefix from configuration failed_, error_ (do include the _ suffix, if required)
{url} Full URL http_example_com_mypath_subpath_query_myquery_1_plus_2_fragment
{url_origin} Scheme with domain http_example_com
{url_relative} Path + query + fragment mypath_subpath_query_myquery_1_plus_2_fragment
{url_domain} Domain example_com
{url_path} Path mypath_subpath
{url_query} Query myquery_1_plus_2
{url_fragment} Fragment somefragment
{feature_file} The filename of the .feature file currently being executed, without extension my_example.feature -> my_example
{step_line} Step line number 1, 10, 100
{step_line:%03d} Step line number with leading zeros. Modifiers are from sprintf(). 001, 010, 100
{step_name} Step name without Given/When/Then and lower-cased. i_am_on_the_test_page
{datetime} Current date and time. defaults to Ymd_His format. 20010310_171618
{datetime:U} Current date and time as microtime. Modifiers are from date(). 1697490961192498

Auto-purge

By default, the purge option is disabled. This means that the screenshot directory will not be cleared after each test run. This is useful when you want to keep the screenshots for debugging purposes.

If you want to clear the directory after each test run, you can enable the purge option in the configuration.

Alternatively, you can use BEHAT_SCREENSHOT_PURGE environment variable to enable the auto-purge feature for a specific test run.

Additional information on screenshots

You can enable additional information on screenshots by setting info_types in the configuration. The order of the types will be the order of the information displayed on the screenshot.

By default, the information displayed is the URL, feature file name, step line:

More information can be added by setting the info_types configuration option and using addInfo() method in your context class.

Maintenance

BDD tests

There are tests for Selenium and Headless drivers. Selenium requires a Docker container and headless requires a Chromium browser (we will make this more streamlined in the future).


Repository created using https://getscaffold.dev/ project scaffold template


All versions of behat-screenshot with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
behat/behat Version ^3.13.0
friends-of-behat/mink-extension Version ^2.7
symfony/finder Version ^6.4 || ^7.0
symfony/http-client Version ^6.0 || ^7.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package integratedexperts/behat-screenshot contains the following files

Loading the files please wait ....