[T.15] 团队项目:Beta 阶段测试报告
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 2025年春季软件工程(罗杰、任健) |
| 这个作业的要求在哪里 | [T.15] 团队项目:Beta 阶段测试报告 |
| 我在这个课程的目标是 | 学习软件工程的基础知识,和团队成员们实践各种软件工程的方法与流程,开发一个让我们值得骄傲的项目 |
| 这个作业在哪个具体方面帮助我实现目标 | Beta 阶段测试报告 |
一、测试计划
-
目标
- 验证核心功能稳定性与正确性
- 覆盖典型业务场景(B 端+ C 端)
- 保证多租户、Pipeline、LLM 调用等关键模块无阻碍
- 收集并修复 Beta 发布前的主要缺陷
-
范围
- 功能测试:文档上传/检索、Pipeline 配置、LLM 问答、权限控制
- 兼容性测试:多操作系统、多浏览器、多硬件配置
- 性能测试:并发检索吞吐、LLM 并发调用时延
- 安全测试:多租户隔离与权限边界
-
资源与角色
- 测试负责人:吴佳峻
- 支撑人员:后端开发(范兴堃)、前端开发(叶佩霖)
-
时间安排
阶段 时间 产出 测试准备 2025/05/20–05/22 测试计划、测试环境搭建 功能 & 兼容性 2025/05/23–05/28 测试用例执行 性能 & 安全 2025/05/29–06/02 性能报告、安全验证 缺陷修复回归 2025/06/03–06/07 回归测试报告 总结与验收 2025/06/08–06/10 测试总结、出口评估
二、测试环境与矩阵
| 维度 | 取值 |
|---|---|
| 操作系统 | Windows 10/11macOS 12Ubuntu 20.04 |
| 硬件配置 | CPU i5-9600/AMD Ryzen 5内存 16–32 GB |
| 浏览器 | Chrome 113、Firefox 102、Safari 15 |
| 后端环境 | Docker Compose (PostgreSQL、Qdrant、FastAPI)8 vCPU + 32 GB RAM |
备注:所有环境均在有线网络(100 Mbps 以上)下测试。
三、测试过程与方法
用例设计
- 场景测试 (Scenario Testing)
- B 端管理员:私有化部署 → 上传内网文档 → 配置多租户权限 → 流水线问答
- B 端终端用户:在限定权限下执行问答 → 验证权限边界
- C 端学习者:上传 PDF → 自助配置默认 Pipeline → 一键问答 → 收藏与分享
- 边界值 & 异常场景
- 非法文件格式上传、超大文件上传、网络中断重连
- 并发 50+ 请求、LLM 超时重试
执行方式
- 手工执行关键功能测试、兼容性测试
- 自动化脚本(Postman + pytest)跑回归用例
- JMeter 并发压测 LLM 服务
Apifox 自动化测试
-
在 Apifox 中,基于 OpenAPI/Swagger 文档一键导入全部接口定义,生成统一的测试集合(Collection)。
-
为每个功能模块(文档上传、向量检索、Pipeline 执行、LLM 调用等)编写了 >100 条断言丰富的接口用例,包括状态码、响应字段、Schema 校验、性能阈值等。
-
在本地与 CI 环境中均通过 Apifox CLI 执行:
apifox run --project-id=<PID> --collection-id=<CID> --report report.json -
结合 pytest 进行二次封装,实现了接口返回内容与数据库状态联动校验,覆盖了典型正、异常、边界场景。

Apifox 压力测试
- 针对文档检索与 LLM 调用两大核心接口,使用 Apifox 的「压力测试(Load Testing)」功能:
- 并发配置:模拟 50、100、200 并发用户,持续 5 分钟;
- Ramp-up 设置:在 60 秒内平滑增加至目标并发;
- 断言:90% 响应时间 ≤ 500ms,错误率 ≤ 1%;
- 报告:生成柱状响应时延分布、TPS 曲线、错误明细等。
- 结果表明,200 并发下检索接口平均时延 320ms,错误率 0.8%,满足 SLAs。
![]()
Apifox 定时测试
- 在 Apifox 云平台创建 每日凌晨 2:00 定时执行任务:
- 自动运行全量自动化用例集;
- 输出 HTML 和 JSON 格式测试报告,并通过飞书机器人推送结果摘要;
- 若失败用例 ≥ 1,则立即告警至相关开发者群。
- 持续监测关键接口稳定性,确保线上环境在任意时刻均在可控状态。
与 CI/CD 集成
-
在 GitHub Actions 中集成 Apifox 测试步骤:
- name: Run Apifox Tests run: apifox run --project-id=$PID --collection-id=$CID --report report.json - name: Upload Report uses: actions/upload-artifact@v3 with: name: apifox-report path: report.json -
每次 PR 合并
main分支即触发全量接口回归与快速压测,未通过时报红并阻止发布。
缺陷管理
-
所有 Bug 记录于 GitHub Issues,标记 Severity 和 Priority
-
测试中发现 28 个缺陷,全部在 Beta 发布前完成验证与关闭
四、测试结果
-
Bug 概况
- 共发现缺陷 28 条
- Critical:2 (并发下检索超时、权限绕过)
- Major:8 (中文 PDF 解析失败、Pipeline 顺序异常)
- Minor:18 (UI 文本溢出、按钮样式错位等)
- Issue 记录率:100%,修复率:100%
- 共发现缺陷 28 条
-
性能指标
- 并发检索吞吐:≥ 120 req/s(90% 响应 < 300 ms)
- LLM 并发调用:支持 ≥ 20 并发,平均时延 1.2 s
-
覆盖率
- 自动化用例:220 条
- 代码覆盖率:82%(主干组件 > 90%)
-
场景测试通过率
场景 用例数 通过 通过率 B 端管理员 40 40 100% B 端终端用户 35 33 94% C 端学习者 45 45 100% 异常 & 边界场景 30 28 93%
五、Beta 版本出口条件(Exit Criteria)
- 缺陷要求
- 无未修复的 Critical 缺陷
- Major 缺陷 ≤ 2 且不影响主要业务
- 用例通过率 ≥ 95%
- 性能达标:并发吞吐 + 时延满足 SLAs
- 安全验证:多租户隔离、权限管控无绕过
- 文档完善:用户安装指南、API 文档、常见问题俱全
六、经验与后续建议
- 文档早规划:测试初期即生成“快速上手”与“故障排查”文档,减少测试与运维沟通成本。
- 场景驱动:场景测试覆盖真实用户流程,比单纯功能测试更能提前暴露集成问题。
- 持续集成:自动化测试与 CI/CD 深度结合,实现“提交即测”,质量反馈更及时。
- 性能监控:Beta 发布后上线 Prometheus + Grafana 监控面板,实时跟踪系统健康度。
结语
本次 Beta 测试覆盖了 RAGnarok 的主要功能与典型场景,所有关键缺陷均已修复,性能与兼容性达标。


浙公网安备 33010602011771号