9.9 KiB
第 1 天 入职检查清单
目标:完成面向新加入软件测试项目的 QA 工程师的 5 小时入职指南。
时长:5 小时(含休息)
第 1 小时:环境搭建(60 分钟)
1.1 克隆仓库并安装依赖
git clone <repository-url>
cd <project-dir>
pnpm install # or npm install
1.2 启动本地数据库(若使用 Supabase/PostgreSQL)
npx supabase start # 等待 2-3 分钟,所有容器启动完毕
docker ps | grep supabase # 验证 8-11 个容器正在运行
1.3 配置环境变量
cp .env.example .env
# 编辑 .env,填入本地开发 URL
1.4 应用数据库迁移
# 按顺序应用所有迁移
for file in database/migrations/*.sql; do
docker exec -i <db-container-name> psql -U postgres -d postgres < "$file"
done
1.5 验证数据库已填充数据
docker exec <db-container-name> psql -U postgres -d postgres -c "SELECT COUNT(*) FROM <main-table>;"
# 应返回预期的行数
1.6 启动开发服务器
pnpm dev
# 验证:http://localhost:8080(或配置的端口)
检查点:✅ 环境运行中,数据库已填充数据,网站加载正常。
第 2 小时:文档审阅(60 分钟)
2.1 阅读快速入门指南(30 分钟)
- 了解项目范围(总测试用例数、时间线)
- 识别测试类别(CLI、Web、API、安全)
- 牢记质量门禁(通过率目标、P0 级 Bug 策略)
- 审阅执行计划(第 1-5 周安排)
2.2 审阅测试策略(30 分钟)
- 理解 AAA 模式(Arrange-Act-Assert,即准备-执行-断言)
- 学习 Bug 分类(P0-P4 严重等级)
- 掌握测试用例编号格式(TC-XXX-YYY)
- 审阅 OWASP 安全覆盖目标
检查点:✅ 策略已理解,测试用例格式已牢记。
第 3 小时:测试数据准备(60 分钟)
3.1 创建测试用户(20 分钟)
通过 UI(若有认证页面):
- 导航至
/auth或/signup - 创建 5 个普通测试用户
- 创建 1 个管理员用户
- 创建 1 个版主用户
通过 SQL(分配角色):
INSERT INTO user_roles (user_id, role)
SELECT id, 'admin'
FROM auth.users
WHERE email = 'admin@test.com';
3.2 安装 CLI 用于测试(20 分钟)
# 全局安装(用于直接测试 `ccpm` 命令)
cd packages/cli
pnpm link --global
# 验证
ccpm --version
ccpm --help
3.3 配置浏览器开发者工具(20 分钟)
- 安装 React Developer Tools 扩展
- 设置网络限流预设(Slow 3G、Fast 3G、Fast 4G)
- 配置响应式设计模式(移动端、平板、桌面视口)
- 测试视口切换
检查点:✅ 测试用户已创建,CLI 已安装,开发者工具已配置。
第 4 小时:执行第一个测试用例(60 分钟)
4.1 打开测试执行跟踪表(5 分钟)
- 文件:
tests/docs/templates/TEST-EXECUTION-TRACKING.csv - 在 Google Sheets、Excel 或 LibreOffice Calc 中打开
- 找到第一个测试用例:
TC-CLI-001或相应编号
4.2 阅读完整测试用例文档(10 分钟)
- 在文档中找到测试用例(例如
02-CLI-TEST-CASES.md) - 阅读:前置条件、测试步骤、预期结果、通过/失败标准
4.3 执行 TC-001(20 分钟)
示例(CLI 安装命令):
# 步骤 1:清除之前的安装
rm -rf ~/.claude/skills/<skill-name>
# 步骤 2:运行安装命令
ccpm install <skill-name>
# 步骤 3:验证安装
ls ~/.claude/skills/<skill-name>
cat ~/.claude/skills/<skill-name>/package.json
4.4 记录测试结果(15 分钟)
更新 TEST-EXECUTION-TRACKING.csv:
| 字段 | 值 |
|---|---|
| 状态 | 已完成 |
| 结果 | ✅ 通过 或 ❌ 失败 |
| Bug ID | (若通过则留空) |
| 执行日期 | 2025-11-XX |
| 执行人 | [你的名字] |
| 备注 | 简要描述(例如"技能在 3.2 秒内安装完成,所有文件存在") |
若测试失败:
- 打开
BUG-TRACKING-TEMPLATE.csv - 创建新的 Bug 条目(Bug ID:BUG-001、BUG-002 等)
- 填写:标题、严重等级(P0-P4)、重现步骤、环境
- 在跟踪 CSV 中将 Bug 链接到测试用例
4.5 庆祝!(10 分钟)
✅ 首次测试执行成功!
检查点:✅ 第一个测试用例已执行并记录。
第 5 小时:团队入职与规划(60 分钟)
5.1 认识团队(20 分钟)
与以下人员安排会议:
- QA 主管(你的上级)
- QA 工程师(同事)
- 工程主管(解答技术问题)
- DevOps 主管(负责基础设施)
议程:
- 互相介绍
- 项目概述与目标
- 你的角色与职责
- 问答与问题排查
5.2 审阅第 1 周计划(20 分钟)
与 QA 主管一起:审阅每周执行计划。
示例第 1 周:CLI 测试(93 个测试用例)
| 日期 | 测试用例 | 时长 | 交付物 |
|---|---|---|---|
| 周一 | TC-CLI-001 至 TC-CLI-015 | 5 小时 | 执行 15 个测试用例 |
| 周二 | TC-CLI-016 至 TC-CLI-030 | 5.5 小时 | 执行 15 个测试用例 |
| 周三 | TC-CLI-031 至 TC-CLI-045 | 5.5 小时 | 执行 15 个测试用例 |
| 周四 | TC-CLI-046 至 TC-CLI-060 | 5.5 小时 | 执行 15 个测试用例 |
| 周五 | TC-CLI-061 至 TC-CLI-093 | 6.5 小时 | 执行 33 个测试用例 + 周报 |
讨论:
- 今天的环境搭建是否存在阻塞问题?
- 对工具和文档是否感到有信心?
- 是否需要调整?
5.3 收藏关键资源(10 分钟)
创建浏览器书签文件夹:"Project QA Resources"
必要链接:
- 本地网站(http://localhost:8080 或配置的端口)
- 数据库管理 UI(Supabase Studio、phpMyAdmin 等)
- GitHub 仓库
- 测试用例文档
- 跟踪表
5.4 最终问答(10 分钟)
常见问题:
问:如果我在第 1 天就发现了一个严重 Bug(P0),该怎么办? 答:立即通知 QA 主管。在 Bug 跟踪器中记录。P0 级 Bug 会阻塞发布,必须在 24 小时内修复。
问:如果我无法在一天内完成所有测试用例,该怎么办? 答:优先执行 P0 测试。在当天结束时告知 QA 主管。计划可以调整。
问:我可以按不同顺序执行测试吗? 答:可以,但请遵循优先级顺序(P0 → P1 → P2 → P3)。同时更新跟踪表。
问:如果某个测试用例描述不清,该怎么办? 答:在团队的 Slack/聊天频道中提问。同时在跟踪表中记录该问题,以便将来改进。
检查点:✅ 已与团队见面,第 1 周计划已审阅,所有问题已解答。
第 1 天完成检查清单
在离开前,请验证以下所有设置已就绪:
环境
- 仓库已克隆,依赖已安装
- 数据库正在运行(Docker 容器或托管实例)
.env文件已配置正确的 URL/密钥- 数据库迁移已应用,数据已填充
- 开发服务器正在运行,网站可加载
工具
- CLI 已安装(如适用)——全局和/或本地
- 浏览器开发者工具已配置扩展
- 网络限流预设已添加
- 响应式设计模式已测试
测试数据
- 普通测试用户已创建(5 个以上用户)
- 管理员用户已创建并分配角色
- 版主用户已创建并分配角色(如适用)
文档
- 快速入门指南已阅读(理解范围和时间线)
- 测试策略已审阅(理解 AAA 模式、质量门禁)
- 第一个测试用例已成功执行
- 测试结果已在跟踪表中记录
团队
- 团队介绍已完成
- 第 1 周计划已与 QA 主管审阅
- 关键资源已收藏
- 已加入沟通渠道(Slack、Teams 等)
后续步骤:第 1 周测试开始
周一早上启动:
- 参加团队站会(15 分钟)
- 回顾第 1 天环境搭建中遗留的阻塞问题
- 开始第 1 周测试执行(按既定计划进行)
每日例行:
- 上午:团队站会(15 分钟)
- 上午场次:测试执行(9:15 - 12:00)
- 午餐:休息(12:00 - 13:00)
- 下午场次:测试执行(13:00 - 17:00)
- 日终:更新跟踪表、提交 Bug、状态报告(17:00 - 17:30)
每周交付物:周五下班前——向 QA 主管提交每周进度报告。
常见第 1 天问题排查
问题 1:数据库容器无法启动
现象:数据库服务失败或容器显示"unhealthy"
解决方法:
- 重启数据库服务(Docker Desktop、systemd 等)
- 查看日志:
docker logs <container-name> - 确认端口未被占用:
lsof -i :<port-number> - 清理旧容器(⚠️ 谨慎操作):
docker system prune
问题 2:网站显示"获取数据失败"
现象:首页加载正常,但数据部分为空
解决方法:
- 验证数据库已填充数据:
SELECT COUNT(*) FROM <table>; - 检查 API 连接(开发者工具中的 Network 标签页)
- 验证
.env文件中的数据库 URL 正确 - 重启开发服务器
问题 3:安装后 CLI 命令找不到
现象:安装后出现 <command>: command not found
解决方法:
- 检查安装路径:
which <command>或pnpm bin -g - 添加到 PATH:
export PATH="$(pnpm bin -g):$PATH" - 永久生效:添加到
~/.bashrc或~/.zshrc - 重新加载 shell:
source ~/.bashrc
问题 4:测试用户角色未显示
现象:管理员用户无法访问仅管理员可用的功能
解决方法:
- 验证角色插入:
SELECT * FROM user_roles WHERE user_id = '<user-id>'; - 退出后重新登录(角色缓存在会话中)
- 清除浏览器 Cookie 和本地存储(F12 → Application 标签页)
恭喜!🎉
你已经完成了第 1 天的入职培训。现在可以开始执行完整的测试计划了。
有疑问或遇到阻塞?
- Slack/Teams:#qa-team 频道
- 邮箱:qa-lead@company.com
- 升级上报:工程主管(针对严重 Bug)
周一见,开始第 1 周测试! 🚀