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

功能测试报告:数据查看冻结列与数据类型下拉框(2026-09-22)

日期:2026-09-22 模块:数据查看(前端 DataView.vue) 测试人:Codex
诉求来源:①横向滚动时企业名称看不到;②数据类型改成一个下拉框更简洁;③跨期汇总的时点列处理口径。

一、功能说明

  1. 左侧冻结标识列:renderColumns 计算属性按表自适应冻结"这是谁的数据"所需的连续前导列,横向滚动时不会跑出视野。
  • 冻结集合:reportPeriod / regionCode / city / regionName / periodType / enterpriseName / projectName / plateNo;
  • 模板由 visibleColumns 改为 renderColumns,并传 :fixed="c.fixed ? 'left' : false"。
  1. 数据类型分组下拉框:去掉"模块单选按钮 + 单类型下拉"的两级结构,合并为一个 el-select(el-option-group 按模块分组,filterable 支持输入搜索),选中类型时同步 activeModule。
  2. 跨期汇总口径确认(按用户决定):汇总视图**不放时点列**(运营车辆数、营运车辆数、企业数),只放流量列与按累计口径重算的比率列。

二、测试环境

  • 后端:start-dev.ps1 启动,8090,日志 Started TrafficAuditApplication / Tomcat started on port(s): 8090
  • 前端:同一脚本启动,8080,Compiled successfully
  • 数据库:本机 MySQL localhost:3308/traffic_audit;登录 admin/123456
  • 浏览器:Codex 内置浏览器真机操作(DOM + 无障碍树校验,非仅代码审查)

三、用例表

3.1 正向用例

编号 输入 预期 实际 结论
TC-1 展开"数据类型"下拉 单下拉、按模块分组 5 组 18 项:道路货运 5 / 公路旅客 3 / 城市客运 5 / 投资 3 / 能耗 2;无单选按钮残留 通过
TC-2 切到"个体客运量/周转量" 立即查询并出数 共 139 条,冻结列=报表期/所属地区/市州/企业名称 通过
TC-3 切到"货运量周转量"(宽表) 出数、冻结标识列 共 234 条,正文 48 列,冻结列=报表期/市州 通过
TC-4 切到"网约车总数" 出数 共 20 条,冻结列=报表期(该表无名称类字段) 通过
TC-5 切到"城市公共交通月度运营情况" 出数、冻结企业名称 共 2860 条,冻结列=报表期/所属地区/市州/企业名称 通过
TC-6 切到"巡游出租汽车运营服务情况月报" 出数 共 340 条,冻结列=报表期/所属地区/市州 通过
TC-7 切到"网约车订单及全省总量" 出数、宽表 共 20 条,正文 22 列(订单合计 + 17 市州),冻结列=报表期 通过
TC-8 货运行(h2032)横向滚动 冻结组常驻 el-table__fixed 表头=报表期/所属地区/企业名称,且冻结表内有数据行(如 2025-04 / 429021 / 神农架大运物流有限公司) 通过
TC-9 页面初次进入 默认类型可查 默认"道路货物运输月度生产情况",共 13056 条 通过

3.2 负向/边界

编号 输入 预期 实际 结论
TC-10 无名称类字段的表(网约车总数/订单) 只冻结报表期,不误冻结数值列 冻结列仅"报表期" 通过
TC-11 未登录直接访问 /api/data/list 401 401 未登录或登录已过期 通过(既有安全策略)
TC-12 下拉输入关键字筛选 支持输入搜索 filterable 生效(按选项名过滤) 通过

3.3 汇总口径核对(时点列为何不汇总)

武汉市公交运营车辆数(city_bus_monthly,2026 年):1 月 8476 → 2 月 8283 → 3 月 8248 → 4~6 月 8050 → 7~8 月 7861。

算法 结果 是否有业务含义
逐月相加 64879 辆 否(同一批车重复计 8 次)
取期末(8 月) 7861 辆 是
取期间平均 约 8100 辆 可选

结论:时点列不参与累加,汇总视图不显示(用户决定)。

四、发现的问题与处置

  1. 冻结列依赖"标识列连续出现在最前面"这一列序假设;若后续调整列序或新增类型,需同步维护 stickyProps 与 nameProps。已在 renderColumns 注释中说明,暂不改动。
  2. 本次改动包含一处**此前未提交的冻结列实现**(09:56 落在工作区),测试通过后一并提交,避免遗漏。

五、结论

数据类型下拉框、按表自适应的左侧冻结列均通过真机用例;切换 7 个类型行数与接口一致,无回归。跨期汇总的时点列处理口径已确定:不参与汇总、不显示。