用途:为 Frappe 应用搭建持续集成(CI)测试,主要面向 GitHub Actions 工作流,涵盖数据库服务、bench 初始化、测试站点创建和测试执行。
主要能力:提供服务器测试、UI 测试(Cypress)、补丁迁移测试等完整工作流模板;MariaDB 与 PostgreSQL 服务配置及凭据、站点配置 JSON 模板;bench 初始化、依赖安装、测试站点创建与进程管理步骤;辅助脚本(install_dependencies.sh、install.sh 及数据库设置脚本);并行服务器测试、UI 测试、日志与代码覆盖率;缓存策略(pip、yarn、Cypress)、性能优化、故障排查与多矩阵测试模式。
使用方式:创建 .github/workflows/server-tests.yml 参考 references/workflow-templates.md,添加 references/helper-scripts.md 中的脚本,按 references/database-services.md 配置数据库服务,并遵循 references/ci-setup-process.md 的步骤。CI 中 bench 通过 pip 安装并使用 --skip-assets,禁用 watch/schedule 进程。
标准环境:bench 目录 ~/frappe-bench 或 /home/runner/frappe-bench;测试站点 test_site,数据库名与用户名/密码均为 test_frappe,root 密码 travis,admin 密码 admin;Python 3.10+,Node.js 24。
适用场景:Frappe 生态应用(如与 ERPNext 集成,需按顺序安装依赖)、独立应用、数据库迁移测试及自定义应用测试。
限制:资料未提供具体价格、收费方式或效果保证;实际配置需按自身应用调整,迁移与 UI 测试细节以参考文档为准。