https://github.com/Roave/no-leaks
:potable_water: PHPUnit Plugin for detecting Memory Leaks in code and tests
https://github.com/Roave/no-leaks
Last synced: about 1 year ago
JSON representation
:potable_water: PHPUnit Plugin for detecting Memory Leaks in code and tests
- Host: GitHub
- URL: https://github.com/Roave/no-leaks
- Owner: Roave
- License: mit
- Created: 2019-03-14T21:10:31.000Z (over 7 years ago)
- Default Branch: 1.6.x
- Last Pushed: 2024-05-22T12:04:45.000Z (about 2 years ago)
- Last Synced: 2024-05-22T13:28:53.698Z (about 2 years ago)
- Language: PHP
- Homepage:
- Size: 1.09 MB
- Stars: 497
- Watchers: 15
- Forks: 18
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# roave/no-leaks
[](https://packagist.org/packages/roave/no-leaks)

This library is a [PHPUnit](https://github.com/sebastianbergmann/phpunit) plugin
that detects memory leaks in tested code or tests.
It utilizes `memory_get_usage()` to make sure the code being executed properly cleans up after itself.
## Installation
```sh
composer require --dev roave/no-leaks
```
## Usage
```sh
vendor/bin/roave-no-leaks
```
If any memory leaks are detected, you should see an output like
following:
```text
Exception: The following test produced memory leaks:
* My\Leaky\Test::testSomething
* My\Leaky\Test::testSomethingElse
```
## Configuration and Parameters
[`vendor/bin/roave-no-leaks`](./bin/roave-no-leaks) supports all
configuration parameters and console parameters of PHPUnit.
## Known Issues
Please be aware that this is not a full substitute for PHPUnit:
* the output format is to be improved
* memory leak detection for scalar types and arrays is not reliable
* can fail depending on xdebug/phpdbg/php-sapi changes
## Professional Support
If you need help with setting up this library in your project,
you can contact us at team@roave.com for consulting/support.