Instruction file imported from zhangclong/sm-console-demo (
.github/instructions/standalone-integration-tests.instructions.md). Copyright stays with the author.
单实例(Standalone)集成测试指南
1. 目的
该脚本用于在当前仓库的一套本地闭环环境中完成:
- 构建
console-admin(使用-Ptest开启/interLogin) - 进入
apphome/bin,通过console.sh start启动单实例后端 - 运行
console-client的真实 HTTP E2E 测试 - 通过
console.sh stop停止后端并收集apphome/logs/下日志
2. 位置与前提
- 脚本路径:
console-admin/src/test/shell/standalone-integration-test.sh - 客户端配置:
console-client/src/test/resources/console-config.yml - 后端默认健康检查地址:
http://localhost:8083/web-api/captchaImage
依赖要求:
- JDK 11+
- Maven
bashcurl
3. 默认行为
不带参数执行时,默认跑完整流程:
bash console-admin/src/test/shell/standalone-integration-test.sh
等价于:构建 → 启动 → 测试 → 停止。
4. 可选参数
--build:仅构建console-admin--start:启动console-admin--test:运行console-client测试--stop:停止console-admin--scope all|writeOps|readOps:控制console-client测试范围
5. 常用示例
5.1 全流程
bash console-admin/src/test/shell/standalone-integration-test.sh
5.2 只构建并启动,保留环境用于手工调试
bash console-admin/src/test/shell/standalone-integration-test.sh --build --start
5.3 在现有环境上仅跑只读测试
bash console-admin/src/test/shell/standalone-integration-test.sh --test --scope readOps
5.4 在现有环境上仅跑写操作测试
bash console-admin/src/test/shell/standalone-integration-test.sh --test --scope writeOps
5.5 手动清场
bash console-admin/src/test/shell/standalone-integration-test.sh --stop
6. 注意事项
- 构建阶段必须使用
-Ptest,否则/interLogin不可用。 - 构建阶段的
-Ptest会通过 Maven 资源过滤把console.adminPasswordExpireDays替换为30,确保首次初始化数据库时 admin 账号不过期。 - 后端统一通过
console-admin/apphome/bin/console.sh管理:start后台启动、stop停止、run前台运行。 - 失败排查优先查看
console-admin/apphome/logs/目录下的实际日志文件,而不是依赖额外的手工重定向日志。 console-client默认用admin / admin123登录;如果变更了测试配置,需要同步更新console-config.yml。- 当前脚本面向单实例场景,不负责多节点或外部依赖环境。
- 写操作测试会创建并删除测试用户/角色;若中途失败,可重新执行全流程以恢复干净环境。