Skip to content

Latest commit

 

History

History
144 lines (107 loc) · 3.26 KB

File metadata and controls

144 lines (107 loc) · 3.26 KB

测试报告

一、当前结果

项目 结果
测试框架 pytest + FastAPI TestClient
测试数据库 survey_test
当前总数 93
通过 93
失败 0
运行命令 pytest -q

最近一次全量结果:

93 passed in 15.66s

二、测试覆盖范围

当前测试已经覆盖 phase1 主链和 phase2 主链。

2.1 认证

  • 注册、登录、登出
  • 未登录访问受保护接口
  • Session 用户身份读取

2.2 问卷

  • 创建、更新、发布、关闭
  • draft / published / closed 状态约束
  • 问卷基础元信息保存

2.3 问卷题目编排

  • 新增题目
  • 删除题目
  • 同一题可重复编辑
  • 引用题目资产到问卷
  • 切换引用版本
  • 题目排序
  • 排序后 __order__:N 跳转目标重写
  • 非法后跳/自跳拒绝

2.4 跳转与校验

  • jump_service 纯逻辑
  • validation_service 纯逻辑
  • 填写路径计算
  • 按题型校验答案

2.5 答卷与统计

  • 发布问卷提交答卷
  • 单卷统计
  • 单题统计
  • 跳转导致不同题回答人数变化
  • 数字题平均值

2.6 phase2 题目资产

  • 创建题目资产
  • 创建新版本
  • 恢复旧版本
  • 共享题目
  • 共享用户使用共享题目
  • 查看题目使用情况
  • 已发布问卷保持旧版本快照稳定
  • 同一题不同版本可被不同问卷同时使用

2.7 phase2 题库

  • 创建题库
  • 题目加入题库
  • 题目移出题库
  • 题库页面渲染
  • 共享题库只读页面语义

2.8 页面回归

  • 题目资产页
  • 题目详情页
  • 题库列表页
  • 题库详情页
  • 问卷编辑页 phase2 面板
  • 共享资产/题库只读视图

三、主要测试文件

文件 作用
tests/test_auth.py 认证接口
tests/test_surveys.py 问卷 CRUD
tests/test_questions.py 问卷内题目编排、排序、版本引用
tests/test_validation.py 校验引擎单元测试
tests/test_jump.py 跳转引擎单元测试
tests/test_responses.py 答卷提交与问卷统计
tests/test_stats.py 单卷统计与跨问卷单题统计
tests/test_question_assets.py phase2 题目资产生命周期
tests/test_question_pages.py 题目页面回归
tests/test_question_bank_pages.py 题库页面回归
tests/test_survey_edit_pages.py phase2 问卷编排页回归
tests/test_phase2_migration.py 一次性迁移

四、重点回归结论

4.1 phase1 主链仍然可用

以下能力没有因 phase2 改造被破坏:

  • 用户认证
  • 问卷发布/关闭
  • 问卷填写
  • 整卷统计
  • 跳转与校验

4.2 phase2 核心约束已被测试固定

以下约束已经由接口级或页面级回归覆盖:

  1. 共享用户可以使用共享题目
  2. 修改题目内容通过新版本完成,不覆盖旧版本
  3. 已发布问卷仍保留旧 snapshot
  4. 恢复旧版本会生成新的 latest version
  5. 共享资产页与共享题库页显示为只读

五、说明

  • 当前测试主要覆盖后端语义和 SSR 页面渲染
  • 浏览器级手工验收仍然建议补一轮,重点看:
    • 题目创建 -> 新版本 -> 共享
    • 题库加题/移题
    • 问卷选题 -> 排序 -> 跳转 -> 切版本
    • 填答 -> 统计 -> 跨问卷单题统计