For CakePHP 3.x compatible version:
composer require friendsofcake/fixturize
The fixturize plugin will help improve performance of your fixture based tests.
This plugin currently only work with MySQL/MariaDB/Percona databases.
Instead of
use Cake\TestSuite\Fixture\TestFixture;
simply use
use FriendsOfCake\Fixturize\TestSuite\Fixture\ChecksumTestFixture as TestFixture;
Re-run your tests and enjoy the speed!
Who | # Tests | Before | After |
---|---|---|---|
Bownty Content Importer | 364 | 15s | 5s |
Apacta REST API (110 fixtures) | 318 | 180s | 30s |
Feel free to submit your own results above
If you happen to stumble upon a bug, please feel free to create a pull request with a fix (optionally with a test), and a description of the bug and how it was resolved.
You can also create an issue with a description to raise awareness of the bug.
If you have a good idea for a Fixturize feature, please join us on IRC and let's discuss it. Pull requests are always more than welcome.
You can join us on IRC in the #CakePHP channel for any support or questions.