What is .phpunit.result.cache

Davide Casiraghi picture Davide Casiraghi · Mar 10, 2019 · Viewed 7.5k times · Source

When I run tests with PhpUnit on a new package I'm creating for Laravel, it generates the file .phpunit.result.cache.

What to do with that? Do I add it to my .gitignore file or not?

I'm using PHPUnit 8.0.4

Answer

Travis Britz picture Travis Britz · Mar 10, 2019

This file helps PHPUnit remember which tests previously failed, which can speed up your testing flow if you only re-run failed tests during development. This is useful for test-driven workflows in which you have configured tests to run automatically, such as on file save, and the same collection of tests is being run repeatedly.

It is also a good idea to add the cache file .phpunit.result.cache to your .gitignore so that it does not end up being committed to your repository.

https://laravel-news.com/tips-to-speed-up-phpunit-tests

If you would prefer not to generate the file then you can run phpunit with the --do-not-cache-result option, as pointed out by @Slack Undertow in the comments. This might be desired when running tests as part of a build pipeline, for example. Or, as @codekandis pointed out, the same option is available as the cacheResult attribute in phpunit.xml.