YouweGit / testing-suite

Collection of PHP code testing packages.
MIT License
11 stars 9 forks source link

Scrutinizer Code Quality

Youwe Testing Suite

Introduction

Youwe Testing Suite is an all-in-one solution for doing static code analysis on composer packages/projects. It does so both locally and in CI/CD. For this, Testing-suite leverages GrumPHP with predefined default configurations per project type.

Features

Supported project types

Included analysis tools

Installation

Testing suite is supposed to be installed as a composer dev dependency. Within any project just run the command below to install the package:

composer require youwe/testing-suite --dev

If a project-type is detected, standards will be applied (otherwise a wizard will be opened)

Usage

Locally

The testing suite can be run manually through the GrumPHP command.

vendor/bin/grumphp run

or for DDev projects

ddev exec vendor/bin/grumphp run

Git commit hook

The testing suite is automatically run at each git commit using a git commit hook.

This git commit hook will automatically detect DDev projects and will run GrumPHP within the DDev container if needed. This behaviour can be disabled:

grumphp: git_hook_variables:

Disable DDev detection by restoring to default exec

# See https://github.com/phpro/grumphp/blob/v2.x/doc/parameters.md for more options
EXEC_GRUMPHP_COMMAND: exec

After changing your `grumphp.yml`, run `vendor/bin/grumphp git:init` to update the git commit hook.

### CI/CD Integration examples

- [Bitbucket Pipelines](docs/examples/bitbucket-pipelines.md)
- [GitHub Actions](docs/examples/github-actions.md)

## Changelog

See the [Changelog](CHANGELOG.md) file for all changes.