diff options
Diffstat (limited to 'docs/install/testing.md')
-rw-r--r-- | docs/install/testing.md | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/docs/install/testing.md b/docs/install/testing.md new file mode 100644 index 000000000..b63dfffcc --- /dev/null +++ b/docs/install/testing.md @@ -0,0 +1,47 @@ +--- +layout: page +title: Testing +--- + +# Testing + +<p class="lead"> + This page describes how to run FixMyStreet’s test suite. +</p> + +## Server testing + +You can run the test suite for the backend codebase by running the following +command in the `fixmystreet` directory: + +{% highlight bash %} +$ script/test +{% endhighlight %} + +The `master` branch of the repository should always be passing all tests for +our developers and on mySociety's servers. + +## Client testing + +To run the front-end tests, you will need to install +[Cypress](https://cypress.io) using `npm` (not direct download), and the +`cypress` command needs to be on your `PATH`. Then you can run the front-end +tests headlessly using: + +{% highlight bash %} +$ bin/browser-tests run +{% endhighlight %} + +This uses its own test server and database, not affecting your development +database. If you wish to run the tests interactively for debugging, use: + +{% highlight bash %} +$ bin/browser-tests open +{% endhighlight %} + +If you're running FixMyStreet in a Vagrant box, you can use this script to run +the test server in the VM and Cypress outside of it: + +{% highlight bash %} +$ bin/browser-tests --vagrant run +{% endhighlight %} |