5.1 KiB
5.1 KiB
执行批次与质量门禁
1. 建议批次
| 批次 | 内容 | 频率 | 预计目标 |
|---|---|---|---|
| B0 基线 | 范围冻结、环境/账号/数据验证、依赖健康 | 每轮开始 | 证明结果可复现 |
| B1 快速门禁 | 静态、单元、契约、构建 | 每次提交/合并请求 | 尽早阻断低层错误 |
| B2 API 回归 | 鉴权、CRUD、状态动作、金额、幂等、审计、上传 | 每日 | 后端事实层稳定 |
| B3 单端回归 | 两 App、三个管理端、官网 | 每日/候选版 | 单端功能和兼容性 |
| B4 跨端 E2E | 7 条主流程、AC-01~AC-24 | 候选版 | 业务闭环可验收 |
| B5 专项 | 安全、性能、弱网、稳定性、灾备、可访问性 | 候选版 | 非功能风险可接受 |
| B6 UAT | 产品、运营、安全、财务、运维签署 | 发布前 | 业务与上线决策完成 |
| B7 发布验证 | 部署校验、迁移、低风险冒烟、监控和回滚 | 发布时 | 生产可用且可回退 |
2. 可直接执行的当前基线命令
Flutter App(分别在两个 App 目录执行)
flutter pub get
flutter analyze
flutter test
flutter build apk --debug
flutter build web --release --dart-define=API_BASE_URL=https://api.example.com
iOS 构建需 macOS 执行:
flutter build ios --simulator --no-codesign
三个 Vue 管理端(分别执行)
pnpm install --frozen-lockfile
pnpm type:check
pnpm lint
pnpm contract:check
pnpm build
涉及后端资源/路由变化时,先执行 pnpm contract:sync 并审查生成差异,再执行 contract:check。
官网
npm ci
npm run test:sites
npm run build
后端
cd backend/api && go test ./... && go vet ./... && go build ./cmd/main/main.go
cd backend/worker && go test ./... && go vet ./... && go build ./cmd/main/main.go
cd backend/iot-client && go test ./... && go vet ./... && go build ./cmd/main/main.go
cd backend/iot-server && go test ./... && go vet ./... && go build ./cmd/main/main.go
建议 CI 增加 go test -race ./...(运行环境支持时)、覆盖率输出、依赖/密钥扫描和 API E2E 作业。命令只是门禁,不等价于完整业务验收。
3. 准入条件
- 被测提交、构建号、数据库版本、配置和变更范围已冻结。
- 环境健康,基线账号/数据/Mock 可用,上一轮阻塞缺陷已处理。
- 新增或变更需求有明确验收口径;接口变更已同步资源契约。
- 高风险动作在隔离环境执行,设备、资金、通知不会影响真实用户。
4. 各阶段准出条件
合并请求
- 受影响模块 L0/L1/L2/L3 通过。
- 状态机、金额、权限、幂等改动具有回归测试。
- 无新增高危依赖/密钥泄露,生成契约无非预期漂移。
候选版
- 全模块构建通过,B2/B3 全回归完成。
- 7 条跨端主流程和 AC-01~AC-24 全部执行。
- P0/P1 为 0;性能、安全、弱网和恢复专项已出报告。
- Worker/IoT 的 Mock 限制在报告中明确,未完成真实联调不伪装成通过。
生产发布
- UAT、安全、财务、运维签署完成;所有 P2 延期有风险接受。
- 数据库迁移已演练,备份、回滚和监控告警可用。
- 发布后冒烟仅执行审批过的低风险动作;设备控制和真实资金动作使用专门演练方案。
5. 冒烟清单
- API/Worker/IoT 启动、健康、配置加载和无敏感日志。
- 五类客户端登录及 client claim 隔离。
- 三个管理端菜单加载、核心列表、详情和一个低风险写操作。
- user_app 读取首页/商品/订单,service_app 读取准入/任务。
- 一次幂等写入重复提交,事实不重复。
- 一次跨组织 identity 访问,被稳定错误码拒绝。
- 一次设备命令 Mock 回执和一次超时待确认。
- 一次订单到任务的跨端可见性校验。
- 一次敏感字段脱敏和审计查询。
- 官网首页、主要导航、静态资源与错误页。
6. 自动化建设优先级
| 优先级 | 建设项 | 原因 |
|---|---|---|
| P0 | API 鉴权/组织隔离/状态机/金额/幂等集成测试 | 当前最高业务与安全风险 |
| P0 | AC-02、03、04、07、08、09、21 跨端回归 | 设备、安全、资金、隔离、离线核心链路 |
| P1 | App Repository/ViewModel/离线草稿及 Web 权限组件测试 | 当前端侧自动化覆盖较薄 |
| P1 | 三管理端契约检查统一 CI、浏览器冒烟 | 防止路由/菜单/资源漂移 |
| P1 | 上传、日志脱敏、依赖与密钥扫描 | 隐私与供应链风险 |
| P2 | 性能基线、故障注入、备份恢复自动化 | 候选版稳定性保障 |
| P2 | 视觉回归、可访问性和多设备兼容矩阵 | 降低交互与适配回归 |
7. 每轮报告最小指标
- 计划/执行/通过/失败/阻塞/未执行用例数及覆盖率。
- 按模块和 P0~P3 的新增、遗留、关闭、重开缺陷。
- AC-01~AC-24 状态,关键链路通过率。
- 自动化通过率、偶发失败率、覆盖率变化和执行时长。
- API 性能分位数/错误率、资源峰值、安全发现、恢复实测值。
- 环境限制、未测范围、残余风险、责任人和下一步日期。