- Guide
- Playground
- GitHub
-
Ecosystem
Help
Resource Lists
Documentation
- Introduction
- Installation
- Usage
- Command Line Options
- Mutators
- Custom Mutators
- Profiles
- Using with CI
- Mutation Badge, cloud HTML report
- How-to Guides
- Caveats
- Debugging Issues
- Infection Playground
- GitHub Sponsors ♥️
- Supported Test Frameworks
Miscellaneous
- Compare with competitors
Posts
- What's new in Infection 0.26.0
- What's new in Infection 0.25.0
- What's new in Infection 0.24.0
- What's new in Infection 0.23.0
- What's new in Infection 0.21.0
Installation
Compatibility Note
Infection requires a recent version of PHP, and Xdebug
, phpdbg
, or pcov
enabled.
You can still use an older Infection version if you’re using an older PHP version.
PHP version | Infection version |
---|---|
8.1.0 | >= 0.26.16 |
8.0.0 | >= 0.26.7 |
7.4.0 | >= 0.18, <= 0.26.6 |
7.3.12 | 0.16-0.17 |
7.2.9+ | 0.14-0.15 |
7.1 | 0.10 - 0.13 |
7.0 | < 0.10 |
Phar
Phar distribution is the best and recommended way of installing Infection on your computer. Unlike infection/infection
, it is bundled with all officially supported Test Frameworks: PHPUnit
, PhpSpec
, Pest
and Codeception
.
Download the latest infection.phar
and infection.phar.asc
:
wget https://github.com/infection/infection/releases/download/0.29.0/infection.phar |
The PHAR is signed with our GPG key. In order to verify whether the PHAR file was signed by Infection team, execute the following:
gpg --recv-keys C6D76C329EBADE2FB9C458CFC5095986493B4AA0 |
You should see something like:
gpg: Signature made Sun Aug 5 21:46:42 2018 +03 |
Make sure fingerprint is equal to C6D7 6C32 9EBA DE2F B9C4 58CF C509 5986 493B 4AA0
.
Additionally, it can be copied to /usr/local/bin
to make it available globally in the terminal:
mv infection.phar /usr/local/bin/infection |
Phive
Infection can also be installed by Phive - The PHAR Installation and Verification Environment.
phive install infection |
Composer
You can install it globally as any other general purpose tool:
composer global require infection/infection |
Do not forget to include it to ~/.bash_profile
(or ~/.bashrc
)!
export PATH=~/.config/composer/vendor/bin:$PATH |
After that, you will be able to run Infection from project root:
# cd /path/to/project/root |
Git
This installation type is suitable for Infection development purposes or as a quickest (but not the best) way to try it locally for your project.
git clone https://github.com/infection/infection.git |
Runnable infection command will be available at bin/infection
. Assuming that you have installed Infection to ~/infection
, you can run mutation testing for you project in such way:
# cd /path/to/project/root |
Homebrew
Infection can be installed through Homebrew
brew tap infection/homebrew-infection |
Homebrew automatically links the executable in the /usr/local/bin
directory so that it is available globally.
You can then run Infection from project root:
infection |
Tap repository: https://github.com/infection/homebrew-infection/