sorry-cypress
  • Documentation
  • Guide
    • Get Started
    • Dashboard and API
    • Cloud Setup
  • Cloud
    • AWS
      • Basic AWS Setup
      • Advanced AWS Setup
      • AWS Networking
      • AWS S3 Manual Setup
    • Google Cloud
      • Google Cloud & MinIO - Deprecated
    • Microsoft Azure
    • Heroku
    • Kubernetes
    • Docker Images
  • Integrating Cypress
    • Integration options
    • cy2 - Deprecated
    • Agent Configuration - Deprecated
    • CLI One Liners - Deprecated
  • Configuration
    • Basic Setup
    • Full Setup
    • Director Service
      • AWS Role Assumption via Service Account
      • AWS S3 Configuration
      • Minio Configuration
      • Azure Blob Storage Configuration
    • API Service
    • Web Dashboard
      • Configuration
    • MongoDB Configuration
    • Troubleshooting
  • Integrations
    • Events
    • Webhooks
    • Slack Integration
    • GitHub Integration
    • BitBucket Integration
    • MS Teams Integration
  • Concepts
    • Parallelization Explained
    • Flaky Tests
    • Test Details
    • Test Status
  • CI
    • GitHub Actions
    • Travis
    • Jenkins
    • AWS Codebuild
  • Development
    • Changelog
    • Development Guide
  • Community Content
  • ❤️ Contributions
  • Support
  • Legal
  • FAQ
Powered by GitBook
On this page
  • Running sorry-cypress kit
  • Setup Screenshots Upload
  • Running cypress tests in parallel.
  • Exploring the dashboard
Edit on GitHub
  1. Guide

Dashboard and API

Running the full sorry-cypress kit - setting up web dashboard to store and browse test results

PreviousGet StartedNextCloud Setup

Last updated 1 year ago

The 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 results

  2. API service (a GraphQL interface to MongoDB) to let us issue queries and retrieve tests results

  3. Dashboard service - a web dashboard for browsing the results

  4. 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 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
  • Make sure to install a modern version of

  • Shut down any stale sorry-cypress services with docker kill

After successfully running docker-compose, we have:

Create a project with the id you wrote as value for projectId in your currents.config.js file (e.g., "yyy").

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.

Open several terminal windows within a directory with tests and run cypress in each.

# 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.

Exploring the dashboard

The dashboard is quite simple - go ahead and explore the tests you have just created.

Congratulations 🎉

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.

director service on

API service on

Dashboard running on

Open the dashboard at

director is running in a Docker container, but it is still accessible at . We have already reconfigured cypress to use this URL. Let's just rerun the tests.

Use the same --ci-build-id value to associate different cypress agents with the same run. Learn more about

basic
minio
docker-compose
http://localhost:1234
http://localhost:4000
http://localhost:8080
http://localhost:8080
http://localhost:1234
CI Build ID.
Empty sorry-cypress dashboard
Dashboard example - list of tests and results for a run