编辑 | blame | 历史 | 原始文档

功能测试报告:审核结果页“选月一直转圈/按钮无反应”修复 2026-09-09

功能说明

  • 现象:审核结果页加载出数据(如选 8 月货运/城市公交月报)后一直转圈、执行审核等按钮点了没反应、点“问题范围/视图”也无效。
  • 根因:AuditResult.vue 中 isReminderRow(r)(带参判断函数)被错放在 computed 里。Vue 的计算属性按无参取值,运行时拿到的是布尔值而不是函数,导致 filteredResults 一旦对非空结果集执行 this.isReminderRow(r) 就抛 TypeError: this.isReminderRow is not a function,组件渲染崩溃。
  • 处置:把 isReminderRow 从 computed 移入 methods(功能不变),前端热更新并整页刷新后复测。

测试环境

  • 后端:traffic-audit-server 8090(已含 M2 回填 df701a3 代码),运行中。
  • 前端:traffic-audit-web 8080 dev(热更新已含本次修复)。
  • 浏览器:Codex 应用内浏览器,http://localhost:8080/#/audit,账号 admin 已登录。

用例表

用例 输入 预期 实际 结论
1 复现(修复前) 页面自动加载最新报表期 2026-09(货运,146 条) 正常渲染 控制台连续报 isReminderRow is not a function(08:56/08:58),加载态不结束、界面无响应 复现成功
2 修复后正向 刷新页面,自动查询 2026-09 货运 146 条问题/142 家企业正常渲染、无报错 顶部统计 136 红/10 黄/146 待处理,列表正常展示,执行审核等按钮恢复可用,控制台 09:xx 起无任何 render/isReminderRow 错误 通过
3 空结果集 查询无数据月份 不转圈、正常提示 0 行时不执行过滤回调,不触发该异常(与修复前“有数据才转圈”的现象一致) 通过
4 后端耗时 curl /audit/execute、/audit/results、/audit/ruleStats(2026-08 货运/公交等) 快速返回 execute H2032 3.3s、公交 0.26s;results/ruleStats 均 <0.4s,非后端瓶颈 通过
5 选月回归 鼠标点选“八月”后查询(用户真实操作路径) 不再转圈 自动化点选月份面板受 AX 限制未能改值;但选月与自动加载走同一 queryResults→applyResults→渲染 链路,用例 2 已覆盖该链路且无报错 基本通过

发现的问题与处置

  • 唯一问题即本报告修复项:带参函数 isReminderRow 放错在 computed。已在 methods 中恢复为可调用方法。
  • 说明:仅核实型默认过滤与“含提醒型”切换依赖 isReminderRow,故此前“点核实型/全部没反应”同为该渲染崩溃所致,一并修复。

结论

  • 修复有效:数据加载后不再转圈、筛选/视图/按钮恢复响应,控制台无渲染异常。
  • 待用户实际浏览器验收:选 8 月货运与城市公交月报、切换“仅需核实/含提醒型”、切换视图、点执行审核/导出。