This repository is no longer maintained and has been archived. Feel free to browse the code, but please migrate to other solutions.
Wordpress plugin development is easy, but when it come to testing things can get complicated pretty fast.
Wordpress CLI can generate all that is required to write integration tests for your plugin, with live Wordpress environment.
But to run those tests you need to have PHP and MySql on your machine, which is not always the case.
This sound like really good used case for docker
and docker-compose
- we can create the relevant images and run them easily on any machine that has Docker.
This also mean that the same version of PHP and MySql that run on your machine, also run on the CI, and you can easily target various PHP/Wordpress versions.
To learn more about this template in this blog post
docker-compose up --build -d
docker-compose run wordpress vendor/bin/phpunit
And watch the tests running.
To clean up, run: docker-compose down
.
Changes in the plugin code or the tests will be hot-reloaded, no need to run build command again.
src
folder.tests\bootstrap.php
and change the plugin name (look for the TODO
).tests
folder.composer.json
file.