Sorry Cypress
Dashboard and API
Running the full sorry-cypress kit - setting up web dashboard to store and browse test resultsThe 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.
Running sorry-cypress kit
We are going to run the full sorry-cypress kit:
1.
director
service will use MongoDB to store the test runs and the results2.
API
service (a GraphQL interface to MongoDB) to let us issue queries and retrieve tests results3.
Dashboard
service - a web dashboard for browsing the results4.
minio
will let us store files - videos and screenshots generated by cypress agent
We are going to run all the services locally using docker-compose
# get docker-compose filecurl --output docker-compose.minio.yml https://raw.githubusercontent.com/sorry-cypress/sorry-cypress/master/docker-compose.minio.yml# start the servicesdocker-compose -f ./docker-compose.minio.yml up
Make sure to install a modern version of docker-compose
Shut down any stale sorry-cypress services with
docker kill
After successfully running docker-compose, we have:
director
service on http://localhost:1234API
service on http://localhost:4000Dashboard
running on http://localhost:8080
Open the dashboard at http://localhost:8080Create a project with the id you wrote as value for projectId
in your currents.config.js
file (e.g., "yyy").Empty sorry-cypress dashboard
Setup Screenshots Upload
We are using minio
service to store files generated by cypress agents - video recordings and failed test screenshots. Each agent uploads the files directly to minio
.Edit your /etc/hosts
file to allow cypress agents to discover the local instance of minio
127.0.0.1 storage
Running cypress tests in parallel.
director
is running in a Docker container, but it is still accessible at http://localhost:1234
. We have already reconfigured cypress
to use this URL. Let's just rerun the tests.Open several terminal windows within a directory with tests and run cypress
in each.# run in each terminalcypress-cloud run --parallel --record --key somekey --ci-build-id hello-cypressAs 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-id
value to associate different cypress agents with the same run. Learn more about CI Build ID.
Exploring the dashboard
The dashboard is quite simple - go ahead and explore the tests you have just created.Dashboard example - list of tests and results for a runCongratulations 🎉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.
Last updated