E2E tests on the CI

There are three potential approaches for running E2E tests on the CI server.

Option one: using a test server

  • The server should periodically update before the tests will run

  • The server will need to reload test data

  • The server should be separate from the dev server


  • Easy to set up (similar to what we have currently)


  • Upkeep of the server

Option two: using a container registry

  • Deploy built containers to a registry

  • Download the containers in GitLab before starting the build (this happens with Redis & PSQL images currently)

  • Start the env, load the data, run the tests


  • Set up easy to replicate locally

  • Container registry can act as a source of through


  • Build more intensive

Option three: build everything in the UI build

  • When running the build, clone additional repositories (backend)

  • Build & spin-up everything in one build


  • No additional infrastructure required


  • Most intense, complex and time-consuming build

  • Most error-prone build