Files
Yb-QaAutomationHub/output/analysis/安徽运八需求_评审报告.md

189 lines
15 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 安徽运八需求 评审报告
> 评审时间: 2026-07-13
> 评审对象: output/test_cases/安徽运八需求_测试用例.md (128条)
> 评审依据: review_checklist.md / test_case_template.md / definition_of_done.md / 风险评估报告
---
## 评审概览
| 指标 | 值 |
| :--- | :--- |
| 用例总数 | 128 |
| 阻断项 | 7 |
| 建议项 | 7 |
| 优化项 | 7 |
| 评分 | 80/100 |
---
## 阻断项
### B-001: R2_004 字段数标题与预期结果不一致(标题14 vs 实际列举17)
- 用例编号: AH_REPORT_R2_004
- 问题: 标题声明"验证第二次上报列表14个字段完整",但预期结果中逐项列举了17个字段(货源单号/运单号/托运单号/车牌号/司机姓名/托运方名称/承运运费/总金额/付款方式/付款时间/收款人/收款账号/收款账号类型/核验状态/异常项/上报状态/操作)。执行人无法确认应以标题为准还是以预期结果为准。
- 修复建议: 与需求/前端确认第二次上报列表的实际列数,统一标题和预期结果中的字段数量和名称列表。
### B-002: R3_002 字段数标题与预期结果不一致(标题11 vs 实际列举13)
- 用例编号: AH_REPORT_R3_002
- 问题: 标题声明"验证第三次上报列表展示11个字段完整",预期结果文字也写"列表展示11个字段",但实际逐项列举了13个字段(货源单号/运单号/托运单号/车牌号/司机姓名/托运方名称/发票号码/发票金额/开票日期/核验状态/异常原因/上报状态/操作)。文字表述"11个字段"与列举内容自相矛盾。
- 修复建议: 确认第三次上报列表的准确字段数,修正标题和预期结果中的数字,使其与列举的字段名数一致。
### B-003: LOG_006 字段数标题与预期结果不一致(标题9 vs 实际列举11)
- 用例编号: AH_REPORT_LOG_006
- 问题: 标题声明"验证上报日志列表9个字段完整展示",但预期结果中逐项列举了11个字段(序号/货源单号/运单号/托运单号/上报阶段/上报结果/接口URL/HTTP状态码/响应时间/上报时间/操作)。
- 修复建议: 确认上报日志列表实际列数,统一标题和预期结果。
### B-004: APL_003 字段数标题与预期结果不一致(标题13 vs 实际列举14)
- 用例编号: AH_REPORT_APL_003
- 问题: 标题声明"验证申诉记录列表13个字段完整展示",但预期结果逐项列举了14个字段(运单号/托运单号/车牌号/司机姓名/托运方名称/上报阶段/核验状态/异常项/申诉状态/申诉时间/申诉人/省平台反馈结果/监管平台反馈时间/操作)。
- 修复建议: 确认申诉记录列表实际列数,统一标题和预期结果。
### B-005: R3_003 字段数标题与预期结果不一致(标题17 vs 实际合计19)
- 用例编号: AH_REPORT_R3_003
- 问题: 标题声明"验证第三次上报详情弹窗发票信息17字段完整展示",但预期结果中各分组字段合计为19个:发票基础字段5个(托运单号数组、发票号码、发票代码号、发票金额(价税合计)、开票日期)+ 销售方8字段(名称/纳税人识别号/地址/电话/开户行/银行账户/账号/联系人)+ 受票方6字段(名称/纳税人识别号/地址/电话/开户行/银行卡号)= 19。标题的"17"与实际合计"19"不匹配。
- 修复建议: 逐字段核对发票信息分组,确认准确字段数为17还是19,修正标题或补充/删除预期结果中的字段。
### B-006: APL_015 预期结果使用"可能"措辞,不可验证
- 用例编号: AH_REPORT_APL_015
- 问题: 预期结果中出现"系统可能有超时告警提醒运营人员跟进"——"可能"表示该行为不确定,无法作为可验证的测试断言。若超时告警是需求要求的必要行为,则必须断言为"系统触发超时告警通知运营人员";若当前未明确,应标记为待确认项。
- 修复建议: (1) 若超时告警已纳入需求,将"可能"改为确定性描述并补充告警渠道和内容;(2) 若尚未明确,在备注中增加 `> ⚠️ 待确认:申诉超时告警机制是否实现、告警渠道和阈值`
### B-007: CROSS_003 违反原子性原则——单条用例验证完整四阶段端到端流程
- 用例编号: AH_REPORT_CROSS_003
- 问题: 该用例将装货完成、财务打款、发票开具、ETC上传全部串联在一条用例中验证,跨越4个上报阶段和多个触发条件。任一环节失败时,无法快速定位问题在哪个阶段。此外,各阶段已有独立的单阶段用例覆盖(R1/R2/R3/ETC系列),此全链路用例与它们形成冗余但缺乏精确定位能力。
- 修复建议: 保留此用例作为冒烟测试或集成验证(类型改为"冒烟测试"),但应将各阶段的独立断言缩减为"全链路各阶段按序成功完成,看板和日志数据一致",移除重复的具体阶段内断言;或拆分为阶段衔接用例(如"第一阶段成功后第二阶段可触发"),每种衔接一个用例。
---
## 建议项
### S-001: LOG_001 和 LOG_003 优先级 P0 偏高,建议降为 P1
- 用例编号: AH_REPORT_LOG_001, AH_REPORT_LOG_003
- 问题: 上报日志属于审计/支持类功能,日志搜索和阶段筛选并非用户核心业务操作流程,置于 P0 会稀释 P0 集合的聚焦度。当前 P0 已有 28 条(占比 22%),将这两个降级可优化 P0 密度。
- 修复建议: 降为 P1。核心原因:日志功能不可用时不影响上报主流程和业务闭环,不符合 P0 定义(核心流程阻断/资损风险)。
### S-002: APL_015 类型建议改为"易用性测试"
- 用例编号: AH_REPORT_APL_015
- 问题: 该用例验证的是"用户长时间等待后的系统状态提示和超时告警体验",属于用户体验/易用性范畴,而非纯功能正确性验证。
- 修复建议: 将 `类型``功能测试` 改为 `易用性测试`
### S-003: R1_003 同时验证3个省份,建议按省份拆分为独立用例
- 用例编号: AH_REPORT_R1_003
- 问题: 该用例在一条用例中同时验证安徽(34)、云南(28)、四川(51)三个省份的上报触发行为。若仅四川不触发有问题而安徽正常,该用例的单一"通过/失败"结果无法精确区分是哪个省份的问题。
- 修复建议: 拆分为3条独立用例:R1_003a 安徽触发、R1_003b 云南不触发、R1_003c 四川不触发(或保留 R1_002 覆盖云南,将 R1_003 缩减为四川+其他一省)。确保每个省份的触发/不触发行为有独立可定位的用例。
### S-004: DASH_012 测试5种标签颜色,建议至少将申诉状态独立拆分
- 用例编号: AH_REPORT_DASH_012
- 问题: 该用例验证4种上报状态标签颜色(蓝色/绿色/红色/橙色)外加申诉状态标签颜色,共计5个颜色断言。虽然都属于"标签颜色映射"这一验证点,但上报状态和申诉状态是两个不同的状态维度。任一颜色配置错误时,该用例失败但无法直接指示是哪个具体标签。
- 修复建议: 将申诉状态标签颜色验证拆出为独立用例,或至少在上报状态验证和申诉状态验证之间设立分组。
### S-005: R2_004 合并了两个验证关注点(字段完整性 + 标签颜色)
- 用例编号: AH_REPORT_R2_004
- 问题: 标题和预期结果同时验证"17个字段完整性"和"收款账号类型标签颜色",这两个关注点属于不同的验证维度(列表字段结构 vs 视觉样式映射),应拆分。
- 修复建议: 拆分为 (a) 验证第二次上报列表字段完整且数据正确;(b) 验证收款账号类型标签颜色——个人账户蓝色、对公账户绿色。
### S-006: DASH_017 分页测试优先级 P3 偏低,建议升为 P2
- 用例编号: AH_REPORT_DASH_017
- 问题: 分页翻页数据重复/遗漏是列表类功能的常见高频缺陷,直接影响数据完整性和用户信任度。当前置于 P3(最低优先级),与实际风险不匹配。
- 修复建议: 升为 P2。分页缺陷虽不阻断主流程,但会导致数据不一致,用户可能基于不完整数据做出错误判断。
### S-007: R1_019 和 R1_020 预期结果缺少数据库层面的一致性校验
- 用例编号: AH_REPORT_R1_019, AH_REPORT_R1_020
- 问题: R1_019 验证1条货物记录、R1_020 验证5条货物记录,预期结果仅覆盖了请求JSON数组和详情弹窗展示,未包含数据库货物表的落库数据与上报数据的一致性校验。与其他用例(如 R2_002 明确校验数据来源表)相比,数据验证深度不足。
- 修复建议: 在预期结果中补充"数据库waybill_goods表中货物记录与上报数据一致"或类似断言。
---
## 优化项
### O-001: R1_016 弱网测试预期结果可更精确
- 用例编号: AH_REPORT_R1_016
- 问题: 预期结果中"请求发送成功但响应延迟时不立即判定失败(超时阈值30s)"未明确在弱网(延迟2000ms、丢包30%)下的具体预期行为——例如是否预期在X次重试内成功,或最终应达到何种状态。建议:明确弱网条件下预期最终状态(如"在网络恢复后10s内完成上报,状态变为已上传")。
- 修复建议: 补充弱网恢复后的具体时效预期和最终状态断言。
### O-002: 部分测试数据列存在与步骤重复的信息
- 涉及用例: DASH_001~DASH_007, R1_001~R1_023 等多条
- 问题: 测试数据列中的内容(如"运单号: YB202607130001")已在测试步骤或前置条件中出现,数据列未提供独立增量信息。虽然模板允许这样做,但数据列的最佳实践是提供步骤中未提及但执行必需的输入值。
- 修复建议: 检查并精简测试数据列,使其仅包含步骤中未体现的独立测试数据(如边界金额、特殊字符、长文本等)。
### O-003: 导出测试缺少导出取消/中断场景
- 涉及用例: AH_REPORT_DASH_008, AH_REPORT_DASH_009
- 问题: 当前导出相关用例覆盖了正常导出和大数据量导出,但未覆盖"导出进行中取消操作""导出时网络中断""导出时关闭浏览器标签页"等中断场景。对于2000+条的大数据量导出场景,中途取消是常见用户行为。
- 修复建议: 考虑新增一条 P3 用例覆盖导出中断场景,验证取消后系统资源释放、无残留临时文件。
### O-004: 搜索功能缺少特殊字符和注入防护测试
- 涉及模块: 模块A(看板搜索)、模块G(日志搜索)
- 问题: 当前搜索用例仅覆盖了正常搜索、模糊搜索、不存在搜索和空结果,未覆盖输入特殊字符(如 `<script>alert(1)</script>`、SQL注入字符串 `' OR '1'='1`、超长字符串 1000+ 字符)的防御行为。
- 修复建议: 考虑为看板搜索和日志搜索各新增1条 P2 安全性测试用例,验证特殊字符输入时不触发XSS、不导致SQL注入、不引起页面崩溃。
### O-005: 列表字段验证用例中缺少"列宽/截断/换行"展示验证
- 涉及用例: AH_REPORT_DASH_011, AH_REPORT_R2_004, AH_REPORT_R3_002, AH_REPORT_APL_003
- 问题: 当前字段完整性验证聚焦于字段存在性和顺序,未验证字段内容过长时的截断/换行/省略号展示、列宽自适应等展示细节。对于司机姓名、托运方名称、货物名称等文本字段,超长内容展示异常是常见 UI 缺陷。
- 修复建议: 考虑在现有字段验证用例的预期结果中补充:"超长文本字段(如托运方名称50+字符)展示省略号或正确换行,表格不横向溢出"。
### O-006: 看板详情弹窗缺少"关闭弹窗后列表状态保持"验证
- 涉及用例: AH_REPORT_DASH_014, AH_REPORT_DASH_015
- 问题: 当前详情弹窗用例验证了弹窗内容完整性,但未验证关闭弹窗后看板列表的筛选状态、分页位置是否保持。这是一个常见的易用性缺陷——关闭弹窗后列表重置为第1页,用户需重新翻页。
- 修复建议: 在现有详情弹窗用例中补充一步"关闭弹窗→验证看板列表筛选条件和分页保持不变"。
### O-007: 前置条件中"系统中存在XX条运单"缺少数据准备指引
- 涉及用例: 约 90% 的用例
- 问题: 大量用例的前置条件使用"系统中存在运单号XXX的运单记录"或"数据库中存在XX条运单",未说明如何创建或准备这些数据。虽然这些是前置状态描述而非执行步骤,但对首次执行的测试人员而言,缺少数据准备脚本或数据构造指引会增加执行门槛。
- 修复建议: 在文件头部或每个模块开头增加数据准备工作说明(如 SQL 脚本引用、造数工具说明),或在备注中标注"可参考测试数据文件构造"。
---
## 维度评分
| 维度 | 得分 | 说明 |
| :--- | :---: | :--- |
| 结构完整性 | 13/20 | 表头格式和列数一致,模块路径格式正确,必填列无空值。但存在5处字段数标题与预期结果不一致(B-001~B-005),影响执行可信度。 |
| 可执行性 | 24/25 | 测试步骤具体、有明确操作和数据,前置条件大多清晰。少量用例(R1_016)预期行为在异常条件下不够精确。 |
| 原子性 | 10/15 | 绝大多数用例为单一验证点。CROSS_003(全链路四阶段)明显违反原子性。DASH_012、R2_004、R1_003 存在合并多个关注点的情况。 |
| 预期结果质量 | 18/20 | 几乎全部用例同时覆盖 UI 反馈和数据状态变化,包含数据库层面的 WHERE 条件或记录数断言,质量优秀。APL_015 使用"可能"措辞是唯一明显缺陷。 |
| 类型准确性 | 9/10 | 类型枚举使用规范。APL_015 建议改为"易用性测试"。 |
| 优先级合理性 | 8/10 | 整体分布合理(P0 22% / P1 48% / P2 23% / P3 6%)。LOG_001/LOG_003 置于 P0 偏高;DASH_017 置于 P3 偏低。 |
**总分: 82/100**
---
## 亮点总结
1. **预期结果质量突出**:绝大多数用例的预期结果同时包含前端 UI 状态(标签颜色、文案提示)和后端数据状态(数据库记录数、WHERE条件、字段值),远超行业平均水平。
2. **历史缺陷防御覆盖完整**4个历史缺陷(BUG-202607-01~04)均有专门的防御用例并在备注中标注来源,形成可追溯的防御闭环。
3. **覆盖维度全面**:128条用例覆盖了主流程、异常流程、边界条件、状态流转、幂等与并发、权限与越权、弱网/超时、字段完整性等多个维度,无重大遗漏。
4. **测试点到用例映射完整**:103个测试点均映射到至少1条用例,无静默遗漏。
5. **待确认项显式标注**:7项待确认均在文末显式标注,符合 DoD 要求。
---
## 修复优先级建议
1. **优先修复 B-001~B-005**(字段数不一致):直接修改标题或预期结果中的数字,低改动成本、高信心增益。
2. **次优先修复 B-006**APL_015 措辞)和 **B-007**CROSS_003 原子性):B-006 改一句话即可,B-007 需要判断保留为冒烟测试还是拆分。
3. **建议项和优化项**可在下轮迭代中集中处理,不阻塞当前评审通过。