跳转至

测试工程师 · 角色指南

假设你已读过 docs/00_overview/docs/01_onboarding/


你的工具箱

工具 用途
PingCode CZTST 用例 / 缺陷
Postman / Knife4j 接口手工测试
Playwright(AI 回归引擎) UI 自动化
本仓库 czerp-qa 计划 / 用例 / 回归 / 缺陷四件套
PingCode MCP + Gitee MCP 拉故事 / 看 PR diff

本角色推荐方法 / 工具Playwright Test Agents(planner / generator / healer)做 AI 回归(已落在 ai-driven-regression);用例设计走「验收标准 → 用例 ×(主流程 + 边界 + 异常 + 权限)」。

高价值工作流(触发 → AI 做什么 → 人怎么验)

# 触发 AI 做什么 人怎么验
验收标准→用例 故事就绪 读 验收标准 + 代码转功能/回归/探索用例,补边界与异常 每 验收标准 ≥1 用例,含 1 边界 + 1 异常,上 CZTST
Planner 新功能可测 Playwright 探索应用产 markdown 测试计划 审计划是否覆盖 验收标准、漏关键路径否(关键闸 1
Generator 计划通过 把计划转 Playwright 脚本,边执行边校验 selector 检查 selector 与测试逻辑(关键闸 2
Healer 回归失败 自愈 locator/等待/数据;判真 bug 则 skip 报告 区分"用例漂移"vs"真缺陷",别把真 bug 治没
API/接口测试 接口联调 用 Playwright requestR<T> 包络与状态码 核对契约 + 多租户/币种数据组合
测试数据 造数据 test-data-prep 列覆盖组合 + 产造数脚本(dev/test) 确认边界覆盖,用完清理
缺陷三角化 失败 / 反馈 转结构化缺陷 + 去重 证据齐 + 先搜后提

新增 skill:test-data-prep(多租户/币种/语言/边界数据)。

一天典型流程

计划会后:
- 跑 testplan-author 起 Sprint 测试计划 → 上 PingCode CZTST

平时:
- 按计划逐故事起用例 (testcase-author)
- 用例上传 CZTST,标记可自动化的部分

开发交付:
- 在 dev / test 环境手工跑核心用例
- 跑 ai-driven-regression 自动回归
- 失败 → defect-submission → 自动到 CZTST 缺陷库

Sprint Review 前:
- 出测试报告(通过率 / 失败率 / 缺陷统计)
- 决定准出

必读 skills

  1. testplan-author
  2. testcase-author
  3. ai-driven-regression
  4. defect-submission

铁律

  1. 每条故事必有测试计划;计划在计划会后 24h 内挂 PingCode。
  2. 每条 验收标准 ≥ 1 条用例;用例至少含 1 条边界 + 1 条异常。
  3. 缺陷必有证据(截图 / 日志 / 控制台错误 / curl 重现)。
  4. AI 回归在 PR 合并后自动跑 — 不要让 P0/P1 用例只靠手工。
  5. 不要重复提缺陷 — 先搜全文。

与各角色协作

  • 与 PM:审故事完整性(验收标准 / 原型 / 风险)。
  • 与 Dev:交付时必须附 dev 环境验证证据;不接受口头 "好了"。
  • 与 Ops:紧急缺陷需要回滚时立即同步。

常见错误

  • ❌ 用例不可独立准备(依赖另一条用例先跑过)
  • ❌ 一个用例覆盖多条 验收标准(失败时不知道哪条 验收标准 挂了)
  • ❌ 缺陷标"严重程度 Blocker + 优先级 P3"自相矛盾
  • ❌ 重复提缺陷(同一现象提了 3 个)
  • ❌ AI 回归 flaky 直接 retry 掩盖不调查根因

数据与环境

  • E2E 引擎:Playwright Test Agents(初始化后 specs 在 czerp-console tests/e2e/,浏览器版本由该仓库锁定)。czerp-console 目前尚未落地 Playwright,初始化步骤见 docs/03_workflows/04_ai-testing.md
  • 测试数据 SQL:初始化后随 czerp-console tests/e2e/prep/
  • test 环境入口/账号:E2E_BASE_URL / E2E_USER / E2E_PWD,由 CI secret 注入;本地从 config/environments.md 取,不进 spec

进一步