Skip to main content

Repository: publishing-e2e-tests

End to end tests for the Publishing pipeline of GOV.UK



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


MIT License