order-refund-button

20260916-201504 轮 · 看它的历史
靶子 BASE=http://localhost:20098  夹具前缀=E2ERFD

── ① 结构:绑定脚本必须排在 jQuery 之后 ──
  ✔ 两个锚点都在渲染产物里 (jq@29395 bind@41625)
  ✔ 🔴 jQuery(@29395) 排在绑定脚本(@41625)之前
  ✔ 🔴 页面零 "$ is not defined"  (got=0 want=0)

── ② 行为:可退单上三步链走得通 ──
  ✔ 可退单渲染成可点的 <button>  (got="BUTTON" want="BUTTON")
  ✔ 🔴 按钮上恰好绑了 1 类事件处理器(= 脚本真的跑过)  (got=1 want=1)
  ✔ 第 1 步:确认弹窗弹出(只有链路跑通才有的中间产物)
  ✔ 🔴 第 1 步期间零 POST  (got=0 want=0)
  ✔ 🔴 取消 → 零 POST(闸还拦得住)  (got=0 want=0)
  ✔ 第 2 步:弹出理由输入框
  ✔ 🔴 第 2 步期间仍零 POST  (got=0 want=0)
  ✔ 🔴 理由留空 → 零 POST(空值守卫仍在)  (got=0 want=0)
  ✔ 🔴 三步走完 → POST 恰好发出 1 个  (got=1 want=1)
  ✔ 发出的是 richangyunying_daifaqi_tuikuan

── ③ 一致:不可退单置灰,原因与后端拒绝时逐字相同 ──
  ✔ 已结清单上没有可点的退款按钮  (got=0 want=0)
  ✔ 渲染成置灰的 span  (got=1 want=1)
  ✔ 置灰按钮带原因: "该订单状态不支持退款(结清/终态不可)"
  ✔ 后端确实拒绝了这张单  (got="0" want="0")
  ✔ 🔴 页面置灰原因 与 后端拒绝文案 逐字相同(两处共用 _refundIneligibleMsg)  (got="该订单状态不支持退款(结清/终态不可)" want="该订单状态不支持退款(结清/终态不可)")

── ④ 退款窗口倒计时 ──
  ✔ 🔴 已签收 + 冷静期未满 → 出现倒计时  (got=1 want=1)
  ✔ 剩余天数算对了(冷静期 7 天、签收于 1 天前 ⇒ 还剩 6 天): "还剩 6 天可退款:满 7 天后系统会自动结清本单,结清后无法再退款。"
  ✔ 倒计时说清了后果
  ✔ 🔴 已签收 + 冷静期已过 → 仍出现倒计时(另一分支)  (got=1 want=1)
  ✔ 到期分支给的是"立即发起"而不是天数: "本单已达自动结清时间,系统下次自动结清后将无法再退款;如需退款请立即发起。"
  ✔ 🔴 待发货(3)的单【不】显示倒计时(自动结清扫不到它)  (got=0 want=0)
  ✔ 🔴 不可退单【不】显示倒计时  (got=0 want=0)
  ✔ 🔴 全程零 JS 错误 ([])  (got=0 want=0)
  ✔ 夹具已清理干净(净零)  (got="0" want="0")

PASS=27 FAIL=0