A suite of end-to-end tests for publisher user journeys. The tests are written in RSpec / Capybara and mimic the behaviour of content editors in a web browser, using headless Chrome.
Warning: this repo is DEPRECATED as of RFC 128 (Continuous Deployment). The tests are slow and brittle and do not run in a realistic GOV.UK environment. Do not add any new tests to this repo.
Read about alternatives to Publishing End-to-end Tests.
Technical documentation
To see which apps are tested check the contents of the spec directory.
To view the details of all the apps involved check docker-compose.yml.
Before running the tests
If this is your first time running the E2E project make sure you have installed Docker and run:
$ bundle install
We recommend that you configure Docker to use at least 4 CPUs with 6 GB of memory, otherwise you may find the apps struggle to run well enough to pass the tests.
If it has been some time since you last worked on the E2E project it is recommended to run:
$ make clean
This will remove all your local apps (in ./apps/
), clone them again and check them out to the deployed-to-production branch (in case one of the apps is on an old branch).
Running the test suite
Build and run the test suite with:
$ make -j4
Running a single test
Running make
executes the following targets in order, which you can
choose to run separately to speed up development: clone
, pull
, build
,
start
, test
and stop
.
For example, to run only the tests for the specialist publisher, you need only
do:
$ make -j4 clone
$ make pull build start test-specialist-publisher stop
Further documentation
Licence
MIT License