Files
vscode-workbench/PLANNING/PROGRESS_E-04.md
T

1.7 KiB

PROGRESS_E-04 · 三步引导 + 考试倒计时 + 每日目标

日期 2026-09-13 · 范围:只改 english-drill 目录(仅新增 tests/e2e 用例 + 注册)

现状 vs 差距(接手时)

  • 已有:UserProfile(exam_date/daily_word_target/onboarding_completed/goal_book_id)、 GoalsView/OnboardingView(校验:日期 YYYY-MM-DD、词量 1-200、days_to_exam=max(0))、 OnboardingPage 三步页、首页 goal-summary 倒计时条。
  • 缺口:E2E 零覆盖。后端/前端实现完整,本轮只补回归。

改动(全部在 C:/Users/12914/Desktop/english-drill/ 内)

  1. tests/e2e/cases_onboarding.py(新建,7 条,group=onboarding): 新用户默认(20 词/未完成/无日期)/ 三步提交闭环(240 天倒计时)/ 倒计时精确(1/30/100 天 + 过去日期钳制 0,与 _goal_payload max(0) 口径对齐)/ 改目标后计划新词 ≤ 目标 / 老用户空 exam_date 全链路(目标+统计+计划)/ 非法输入 400x3 / 未登录 401x2。
  2. tests/e2e/run_e2e.py:注册 cases_onboarding。

口径校准(诚实记录)

  • 过去日期倒计时:初版用例断言 <= 0,跑前核对后端为 max(0, days),已改断言为 == 0。
  • “修改目标后计划随之变化”:计划接口返回结构为 cards_new/cards 混合,用例取三键和并断言 ≤ 目标。

验证

python "C:/.../english-drill/tests/e2e/run_e2e.py" -k onboarding
# 合计 7 用例 | 通过 7 | 断言失败 0 | 异常 0
python "C:/.../english-drill/tests/e2e/run_e2e.py"
# 合计 124 用例 | 通过 124 | 断言失败 0 | 异常 0(无回归)

状态

done。遗留:无(复杂规划算法任务卡明确不做)。