We use PHPUnit for unit tests, and Behat and Mink for functional testing.
The PHPUnit tests don’t have full coverage but should cover most libraries and models. Controllers are not unit tested YET.
Behat tests cover anything that happens on the api end: All API calls, OAuth flow, Login/logout/registration.
The frontend is NOT tested yet, but should be. We’re still figuring out how to handle this.
When developing new features or new code:
Tests can be written before or after code.
Tests MUST exist and pass before code is merged
Running the tests
We use PHPUnit for unit tests, PHPSpec for spec tests, and Behat and Mink for functional testing.
You can install the Behat, Mink and other required packages using Composer, Just run
Composer will drop the the runtimes into
Before running Behat tests, it will be necessary to create a
Then edit the
behat.yml file and ensure that both
base_url variables matches your installation.
To run the tests themselves