2017 © Pedro Peláez
 

library phpspec-code-coverage

Code Coverage Extension for PhpSpec

image

mahalay/phpspec-code-coverage

Code Coverage Extension for PhpSpec

  • Wednesday, February 15, 2017
  • by mahalay
  • Repository
  • 1 Watchers
  • 0 Stars
  • 382 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 3 Versions
  • 50 % Grown

The README.md

Latest Stable Version GitHub stars Total Downloads GitHub Workflow Status Scrutinizer code quality License, (*1)

phpspec-code-coverage

[phpspec-code-coverage]0 is a PhpSpec extension that generates Code Coverage reports for PhpSpec tests., (*2)

Generating Code Coverage reports allows you to to analyze which parts of your codebase are tested and how well. However, Code Coverage alone should NOT be used as a single metric defining how good your tests are., (*3)

phpspec-code-coverage console report phpspec-code-coverage HTML report, (*4)

Requirements

Compatibility

phpspec-code-coverage PHP phpspec phpunit
4.x ^7.1 `^4.2 \ | ^5.0 || ^6.0|^5.0 || ^6.0 || ^7.0`
5.x >= 7.2 `^5.0 \ | ^6.0 || ^7.0|^6.0 || ^7.0 || ^8.0`
6.x >= 7.3 `^6.0 \ | ^7.0|^9.0`

Change Log

Please see CHANGELOG.md for information on recent changes., (*5)

Install

Install this package as a development dependency in your project:, (*6)

$ composer require --dev friends-of-phpspec/phpspec-code-coverage

Enable extension by editing phpspec.yml of your project:, (*7)

``` yaml extensions: FriendsOfPhpSpec\PhpSpec\CodeCoverage\CodeCoverageExtension: ~, (*8)


This will sufficient to enable Code Coverage generation by using defaults provided by the extension. This extension supports various [configuration options](#Options). For a fully annotated example configuration file check [Configuration section](#Configuration). ## Usage If you execute `phpspec run` command, you will see code coverage generated in `coverage` directory (in `html` format): $ bin/phpspec run **Note!** When generating Code Coverage reports make sure PHP processes run via CLI are not memory limited (i.e. `memory_limit` set to `-1` in `/etc/php/cli/php.ini`). ### Running with phpdbg This extension now supports [phpdbg][4], which results in faster execution when using more recent versions of PHP. Run `phpspec` via [phpdbg][4]: $ phpdbg -qrr phpspec run **Note!** PHP 7+ is required for code generation to work with [phpdbg][4]. ## Configuration You can see fully annotated `phpspec.yml` example file below, which can be used as a starting point to further customize the defaults of the extension. The configuration file below has all of the [Configuration Options](#Options). ```yaml # phpspec.yml # ... extensions: # ... other extensions ... # friends-of-phpspec/phpspec-code-coverage FriendsOfPhpSpec\PhpSpec\CodeCoverage\CodeCoverageExtension: # Specify a list of formats in which code coverage report should be # generated. # Default: [html] format: - text - html #- clover #- php #- xml # # Specify output file/directory where code coverage report will be # generated. You can configure different output file/directory per # enabled format. # Default: coverage output: html: coverage #clover: coverage.xml #php: coverage.php #xml: coverage # # Should uncovered files be included in the reports? # Default: true #show_uncovered_files: true # # Set lower upper bound for code coverage # Default: 35 #lower_upper_bound: 35 # # Set high lower bound for code coverage # Default: 70 #high_lower_bound: 70 # # Whilelist directories for which code generation should be done # Default: [src, lib] # # Should text output show only summary? # Default: false #show_only_summary: true # whitelist: - src - lib # or to apply filtering on files names #- directory: src # suffix: "Controller.php" # prefix: "Get" # # Whiltelist files for which code generation should be done # Default: empty #whilelist_files: #- app/bootstrap.php #- web/index.php # # Blacklist directories for which code generation should NOT be done #blacklist: #- src/legacy # or to apply filtering on files names #- directory: src/legacy # suffix: "Spec.php" # prefix: "Test" # # Blacklist files for which code generation should NOT be done #blacklist_files: #- lib/bootstrap.php # # Require minimum code coverage (in percent - e.g., 91.15) #min_coverage: 100

Options

  • format (optional) a list of formats in which code coverage should be generated. Can be one or many of: clover, php, text, html, xml (default html) Note: When using clover format option, you have to configure specific output file for the clover format (see below).
  • output (optional) sets an output file/directory where specific code coverage format will be generated. If you configure multiple formats, takes a hash of format:output (e.g. clover:coverage.xml) (default coverage)
  • show_only_summary (optional) for showing only summary in text report (default false)
  • show_uncovered_files (optional) for including uncovered files in coverage reports (default true)
  • lower_upper_bound (optional) sets lower upper bound for code coverage (default 35).
  • high_lower_bound (optional) sets high lower bound for code coverage (default 70)
  • whitelist takes an array of directories to whitelist (default: lib, src). The array can be made more specific if an associative array is given with the following keys (directory, prefix, suffix)
  • whitelist_files takes an array of files to whitelist (default: none).
  • blacklist takes an array of directories to blacklist (default: test, vendor, spec). The array can be made more specific if an associative array is given with the following keys (directory, prefix, suffix)
  • blacklist_files takes an array of files to blacklist

Authors

Copyright (c) 2017-2018 ek9 dev@ek9.co (https://ek9.co)., (*9)

Copyright (c) 2013-2016 Henrik Bjornskov, for portions of code from henrikbjorn/phpspec-code-coverage project., (*10)

License

Licensed under MIT License., (*11)

The Versions

15/02 2017

dev-master

9999999-dev

Code Coverage Extension for PhpSpec

  Sources   Download

MIT

The Requires

 

15/02 2017

3.2.0-alpha

3.2.0.0-alpha

Code Coverage Extension for PhpSpec

  Sources   Download

MIT

The Requires

 

15/02 2017

dev-dev-master

dev-dev-master

Code Coverage Extension for PhpSpec

  Sources   Download

MIT

The Requires