Dashboard and API
Running the full sorry-cypress kit - setting up web dashboard to store and browse test results
The basic setup of sorry-cypress is already quite useful - we can run cypress tests in parallel without any limitations.
However, we want to store and see the test results and explore errors, screenshots and videos.
We are going to run the full sorry-cypress kit:
directorservice will use MongoDB to store the test runs and the results
APIservice (a GraphQL interface to MongoDB) to let us issue queries and retrieve tests results
Dashboardservice - a web dashboard for browsing the results
We are going to run all the services locally using
# get docker-compose file
curl --output docker-compose.minio.yml https://raw.githubusercontent.com/sorry-cypress/sorry-cypress/master/docker-compose.minio.yml
# start the services
docker-compose -f ./docker-compose.minio.yml up
- Shut down any stale sorry-cypress services with
After successfully running docker-compose, we have:
Empty sorry-cypress dashboard
We are using
minioservice to store files generated by cypress agents - video recordings and failed test screenshots. Each agent uploads the files directly to
/etc/hostsfile to allow cypress agents to discover the local instance of
directoris running in a Docker container, but it is still accessible at
http://localhost:1234. We have already reconfigured
cypressto use this URL. Let's just rerun the tests.
Open several terminal windows within a directory with tests and run
# run in each terminal
cypress-cloud run --parallel --record --key somekey --ci-build-id hello-cypress
As soon as agents start their execution, refresh the dashboard. You'd see a new project and a new run created.
Use the same
--ci-build-idvalue to associate different cypress agents with the same run. Learn more about CI Build ID.
The dashboard is quite simple - go ahead and explore the tests you have just created.
Dashboard example - list of tests and results for a run
You have set up sorry-cypress on your local machine. Now you can run unlimited cypress tests and use the dashboard to browse the results.
In the next article, we'll learn how to setup sorry-cypress in the cloud using different cloud providers.