Infection
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
What Infection is
Infection is a mutation testing framework for PHP. It mutates source code through changes to the abstract syntax tree, using a set of predefined mutators. Infection first checks that the test suite passes. For each mutant, it runs only the tests that cover the changed line and records whether they fail. Supported test frameworks are PHPUnit, PhpSpec, Codeception and Testo. It requires PHP 8.3 or later with Xdebug, phpdbg or pcov installed. Infection runs as a CLI tool from the project root. Its main metric is the Mutation Score Indicator, the share of mutations detected by tests. An online playground runs it in the browser.
Written from the project's README, read , and its documentation (see sources).
- Category
- Code quality and static analysis
- License
- BSD-3-Clause
- Language
- PHP
- Changelog
- Releases on GitHub
Repository metrics
Status
activeLast commit within 90 days of the fetch date.Computed from the last commit date and the archive flag on the fetch date. See the status rules.
Alternatives
Listed code quality and static analysis tools, same primary language first, then by GitHub stars. Each line gives one fact from the tool's documentation where it differs from Infection's, with its source.
PHPStan: Languages or files analysed: PHP code. source: README
Ruff: Languages or files analysed: Python files (*.py, *.pyi), Jupyter Notebooks (*.ipynb) and pyproject.toml. source: Docs: Configuring Ruff
ShellCheck: Languages or files analysed: Shell scripts in the sh, bash, dash, ksh and BusyBox dialects. source: Docs: shellcheck(1) manual
ESLint: Languages or files analysed: ECMAScript/JavaScript code; JSX parsing when enabled. source: README
mypy: Languages or files analysed: Python programs with type hints. source: README
golangci-lint: Languages or files analysed: Go code. source: README
Semgrep: Languages or files analysed: Community supported in Semgrep CE: C/C++, C#, Go, Java, JavaScript, TypeScript, Kotlin, Python, Ruby, Rust, PHP, Scala, Swift, Terraform. source: Docs: Supported languages for Semgrep Community Edition (CE)
Infer: Languages or files analysed: Java, C++, Objective-C and C. source: README
Questions
Is Infection open source?
Yes. Infection is released under BSD-3-Clause, an OSI-approved license, as reported by the GitHub API on 2026-09-22.
Is Infection maintained?
On 2026-09-22, the last commit to the default branch was on 2026-09-22, so the listed status is active. Rule: Last commit within 90 days of the fetch date.
How many GitHub stars does Infection have?
2,243 stars on 2026-09-22, from the GitHub API. The number is refreshed at each monthly update.
What language is Infection written in?
The repository's primary language, as reported by the GitHub API, is PHP.
Sources
- GitHub REST API: repository, read
- GitHub REST API: commits, read
- GitHub REST API: latest release, read
- GitHub REST API: contributors, read
- README, read
- Infection documentation: Introduction, read