
agoldis/sorry-cypress-directorsorry-cypress是一个开源、本地部署、自托管的Cypress仪表盘替代方案。它允许用户脱离官方Cypress仪表盘,在自有基础设施上运行Cypress测试,支持测试并行执行、结果持久化存储及可视化展示,帮助团队完全掌控测试数据和运行环境,避免官方仪表盘的限制和依赖。
通过Docker Compose快速启动完整服务栈:
bash# 克隆仓库(可选,用于获取docker-compose配置) git clone [***] cd sorry-cypress # 启动所有服务 docker-compose -f docker-compose.full.yml up
服务启动后:
预构建镜像托管于Docker Hub:[***]
| 服务 | 镜像名称 | 说明 |
|---|---|---|
| director | agoldis/sorry-cypress-director | 负责测试并行协调和结果存储 |
| api | agoldis/sorry-cypress-api | GraphQL API服务,提供测试数据查询 |
| dashboard | agoldis/sorry-cypress-dashboard | Web仪表盘,可视化测试结果 |
镜像标签对应Git标签,latest标签对应master分支最新版本。
配置Cypress指向sorry-cypress服务
找到Cypress安装路径(可通过DEBUG=cypress:* cypress version命令查看),修改配置文件 <cypress-root>/packages/server/config/app.yml:
yamlproduction: # 替换为sorry-cypress director服务URL api_url: "http://localhost:1234/" # 本地部署示例 # 或 "[***]" 生产环境示例
运行并行测试
bashcypress run --parallel --record --key YOUR_RECORD_KEY --ci-build-id UNIQUE_BUILD_ID
负责测试并行协调、结果存储和截图上传,核心配置通过环境变量实现:
| 环境变量 | 说明 | 默认值 |
|---|---|---|
| PORT | 服务端口 | 1234 |
| DASHBOARD_URL | 仪表盘URL(Cypress客户端显示的"运行URL") | - |
| EXECUTION_DRIVER | 执行驱动类型 | "../execution/in-memory"(无持久化) |
| SCREENSHOTS_DRIVER | 截图驱动类型 | "../screenshots/dummy.driver"(不存储截图) |
| ALLOWED_KEYS | 允许的记录密钥(逗号分隔),空值表示允许所有 | - |
持久化配置(MongoDB):
bashEXECUTION_DRIVER="../execution/mongo/driver" MONGODB_URI="mongodb://mongo:27017" # MongoDB连接地址 MONGODB_DATABASE="sorry-cypress" # 数据库名称
S3截图存储配置:
bashSCREENSHOTS_DRIVER="../screenshots/s3.driver" S3_BUCKET="your-bucket-name" # S3存储桶名称 S3_REGION="us-east-1" # S3区域 # 需确保环境中存在具有S3访问权限的AWS凭证
GraphQL API服务,用于查询MongoDB中存储的测试数据:
| 环境变量 | 说明 | 默认值 |
|---|---|---|
| MONGODB_URI | MongoDB连接地址 | "mongodb://mongo:27017" |
| MONGODB_DATABASE | 数据库名称 | "sorry-cypress" |
Web仪表盘(ReactJS),可视化测试结果:
| 环境变量 | 说明 | 默认值 |
|---|---|---|
| GRAPHQL_SCHEMA_URL | GraphQL API地址 | - |
yaml# docker-compose.full.yml 示例 version: '3' services: mongo: image: mongo:4.4 ports: - "27017:27017" volumes: - mongo-data:/data/db director: image: agoldis/sorry-cypress-director:latest ports: - "1234:1234" environment: - PORT=1234 - DASHBOARD_URL=http://localhost:8080 - EXECUTION_DRIVER=../execution/mongo/driver - MONGODB_URI=mongodb://mongo:27017 - MONGODB_DATABASE=sorry-cypress - SCREENSHOTS_DRIVER=../screenshots/s3.driver - S3_BUCKET=your-s3-bucket - S3_REGION=us-east-1 depends_on: - mongo api: image: agoldis/sorry-cypress-api:latest ports: - "4000:4000" environment: - MONGODB_URI=mongodb://mongo:27017 - MONGODB_DATABASE=sorry-cypress depends_on: - mongo dashboard: image: agoldis/sorry-cypress-dashboard:latest ports: - "8080:80" environment: - GRAPHQL_SCHEMA_URL=[***] depends_on: - api volumes: mongo-data:
Q: 为什么选择sorry-cypress?
A: 解决官方Cypress仪表盘可能出现的崩溃、并行测试限制等问题,实现数据自主和基础设施可控。
Q: 是否合法使用?
A: 合法,Cypress本身是开源软件,sorry-cypress作为替代方案符合开源许可。
Q: 是否生产就绪?
A: 是的,已在多个生产环境中使用。
MIT

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务