feat: /qe-fleet run 安徽运八需求 + 系统坑修复

系统修复:
- fleet_runner.py: Windows UTF-8 编码兼容(reconfigure stdout/stderr)
- fleet_runner.py: run 命令自动生成合并清单供导出使用
- fleet_manifest.py: 新增 save_merged_manifest() 保存统一清单
- fleet_config.yml: 修复 YAML keywords 格式(block sequence → flow sequence)
- 恢复被误删的知识库文件(payment_flow_cases, marketing_activity_cases)

QE Fleet 产物 (安徽运八需求):
- 153个测试点 + 53条可执行测试用例
- 需求分析/风险评估/测试策略/质量裁决(PASS)
- Excel 导出 + 版本快照 v2
- 确认结论文件已归档
This commit is contained in:
xst
2026-07-13 09:49:54 +08:00
parent b958b75899
commit acdb441507
77 changed files with 4134 additions and 1597 deletions
+208 -57
View File
@@ -1,78 +1,229 @@
# 项目画像(通用基线版,请按项目实际情况维护)
# 运八网络货运平台 - 项目画像
> 用途:为本仓库内测试分析、测试点、测试用例提供项目差异化约束
>
> 使用原则:本文件先提供测试行业常用的通用基线,后续项目落地时必须补充项目真实规则;若与正式需求、产品说明、接口文档冲突,以项目最新确认结论为准。
>
> 用途:为本仓库内测试分析、测试点、测试用例提供"项目差异化约束"
> 维护要求:当架构、业务模式、风控策略、履约策略、权限模型、计费规则等发生变更时,必须同步更新本文件。
> 数据来源:2026-07-10 通过 Playwright 对测试环境管理端在线页面实际浏览采集(352个菜单项、184个页面截图)。
## 1. 项目简介
- 项目名称:待补充
- 项目类型:默认按中后台系统、交易类系统、会员营销系统、内容平台或工具平台中的一种理解,未明确前不得擅自细化。
- 目标用户:默认至少包含终端用户、运营人员、客服/审核人员、系统管理员中的部分角色,具体以项目实际为准。
- 核心业务域:待补充,可从下单、履约、营销、会员、支付、退款、内容发布、审批流等域中选择。
- 当前版本范围:以本次 `requirements/` 下需求文档为准,未写入需求范围的能力默认不纳入本期。
- **项目名称**:运八网络货运平台(YunBa Network Freight Platform
- **所属公司**:云南运八数据科技有限公司(组织机构代码:YNCG)
- **软著版本**:TMS(运输管理系统)
- **项目类型**:网络货运平台(中后台管理系统 + 司机端APP + 货主端)
- **平台官网**www.ynyun8.com
- **客服电话**400-000-2888
- **支付方式**:arpa_2(云企付二期)+ 网商银行(浦发/快钱/光大)
- **网络货运上报**:云南省(reportProvince=28
- **测试环境**
- 管理端:https://ybxcx.ynyun8.com:8000/admin
- API基地址:https://ybxcx.ynyun8.com:8000/
- WebSocketwss://ybxcx.ynyun8.com:8000/
- **测试账号**
- 超级管理员:super_admin / 951260684NiAn..
- 车队长:13113113113 / 88888888
- 司机:15188888888 / 88888888
- **目标用户角色**
- 平台运营人员(super_admin):后台管理与审核
- 货主(托运人):发布货源、管理运单、结算付款
- 车队长:接单并分派给名下司机
- 司机:实际运输执行,上传装卸货资料
- 财务人员:运单打款、资金管理
- 客服人员:订单咨询、异常协查
## 2. 业务边界与禁用能力
## 2. 核心业务域(基于实际在线系统菜单结构)
- 本项目明确不支持的能力:凡需求文档、接口文档、项目说明中未声明支持的能力,默认按“不支持”处理,不得在测试分析和测试用例中臆造。
- 受监管或合规限制的流程:涉及支付、退款、发票、实名、隐私数据、权限审批、操作留痕等能力时,默认认为存在合规要求,测试中需覆盖鉴权、留痕、异常拦截和数据保护。
- 灰度/地域/渠道差异说明:若需求未明确,则默认检查 Web/H5/App/小程序、测试环境与生产配置、不同地域或租户下是否存在规则差异,并将其作为待确认项。
### 2.1 首页 Dashboard
- 平台车辆总计 / 平台运力统计
- 货源单(未接单/已接单/已结算/已撤销)
- 运输单(待运输/运输中/已卸货)
- 交易数据(充值总额/交易总额/运费总额/开票总额)
- 快捷入口:发布货源、订单管理、客服管理、大数据中心、中闽大数据
- 运输流程图展示
## 3. 核心业务规则(项目级)
### 2.2 基础信息 = 平台管理 + 货主管理 + 承运管理 + 车辆服务 + 数据字典 + 审核管理 + 商户中心 + 账户管理 + 彩虹糖
- 结算与支付规则:凡涉及金额、折扣、积分、优惠、手续费、税费、退款分摊时,默认要求金额计算可追溯、展示口径一致、前后端结果一致、重复提交不导致重复扣减。
- 营销与优惠规则:默认检查优惠互斥、叠加优先级、门槛命中、适用范围、失效时间、回滚恢复和异常场景;若项目无营销能力,应在项目化配置中显式写明。
- 风控与权限规则:默认要求关键操作具备角色限制、越权拦截、二次确认或风控校验;高风险动作失败时不得进入成功态。
- 状态流转规则:默认所有核心对象都应具备明确状态机约束,禁止跳状态、逆状态、重复终态处理;异常中断后状态应可解释、可恢复、可追踪。
**平台管理**:账号管理、角色管理(含权限分配)
**货主管理**:个体货主/企业货主列表+表单(含多Tab:发票资质/地址/承运服务/员工/合同/权限/快钱账户等)、分账记录
**承运管理**:车队管理(列表+表单含多Tab)、司机管理(列表+表单含多Tab)、平台车辆、车辆地图、运输停车报警
**车辆服务**:车辆保险、车辆维修、车辆违章、车辆事故
**数据字典**:商品档案、商品类型、单位档案、车型/车长/车宽/车高/轴数/吨位管理、增值类型、银行类型(含快钱)、银行编码/网点管理、能源卡类型
**审核管理**:司机审核(含开通高德/身份证上报)、换号审核、车辆审核(含车牌号上报)、货主审核、维修审核、开票审核、对账审核、车队司机/车辆审核、车队审核、核验审核
**商户中心**:商户管理(浦发)、快钱、光大会员列表、光大文件、光大监管商户号、会员资金明细、光大推送、光大监管商户
**账户管理**:余额统计(浦发/快钱/光大)、账户充值(含短信验证)、分账记录、变更记录、提现记录(浦发/光大)、平台公户、支付流水(含确认/还原)、支付明细(含流水号)、收款编码/记录、车队长收款记录
**彩虹糖**(风控):司机审核、车辆审核、司机比对、车辆比对
## 4. 技术与集成约束
### 2.3 整车运输 TMS(核心业务)
- 关键依赖系统:默认关注认证中心、用户中心、库存/资源中心、支付网关、消息系统、营销中心、风控系统、文件服务、第三方回调服务等;实际未接入的依赖请在项目化配置中删除。
- 外部接口约束:默认按存在超时、重试、幂等、限流、熔断、降级、重复回调、乱序回调、部分成功等风险设计测试。
- 数据一致性策略:若需求未明确,默认按“关键交易结果最终一致、关键扣减与状态更新需具备幂等保护”理解,并将强一致/最终一致边界列入待确认。
**货源管理**:发布货源(含OCR识别Tab/地图选点/指定车队司机/指定承运费率Tab)、货源大厅、项目货源(含创建项目/常跑路线/指定车队司机/指定承运费率Tab)、货源审核
## 5. 高风险场景与历史事故
**运输管理**:运单跟踪(含待装货/待运输/待卸货Tab)、运单管理(含批量删除/拆分/开票/导出)、运单轨迹
- 资损风险点:重复提交、重复支付、重复退款、优惠多减、金额少收/多收、库存超扣、积分或券未正确回滚、并发下重复创建资源。
- 可用性风险点:弱网超时、接口抖动、依赖不可用、消息延迟、回调丢失、页面重复点击、前后端缓存不一致、批量操作部分失败。
- 数据风险点:脏数据兼容、历史数据迁移、空值/默认值污染、精度丢失、跨租户串数据、删除后残留引用。
- 典型线上事故防御策略:默认对核心链路补充幂等、重试、回滚、补偿、审计日志、告警阈值和人工兜底场景。
**预付管理**:预付运费、预付统计、预付记录
## 6. 测试策略偏好(项目定制)
**运单认证核算**:运单证件异常、运单业务异常、运单时长异常、货物重量异常、运费金额异常、待处理异常运单、轨迹异常、风控异常运单、运费核算
- P0 优先覆盖链路:登录鉴权、核心主流程、金额/资源扣减、状态变更、提交确认、异常回滚、查询展示一致性。
- 必测异常场景:参数非法、前置条件不满足、重复点击、并发提交、超时重试、依赖失败、权限不足、状态已变化、数据部分缺失。
- 非功能重点:弱网、超时、高并发、权限隔离、接口幂等、审计日志、性能基线、兼容性、可观测性。
- 自动化优先级建议:稳定且高频回归的核心主流程、历史缺陷高发链路、金额与状态计算逻辑、关键接口鉴权与幂等校验优先自动化。
**运单认证审核**:运单业务异常、运单认证审核、运单时长异常、货物重量异常、运费金额异常
## 7. 需求冲突判定口径
**承运结算**:运费核算、货主打款、异常运单、回单签收、财务打款、财务分账、电子回单、货主支付、合并明细、合并付款、财务驳回、打款记录、合并打款、运单审核、**垫资-财务打款**、**垫资-货主打款**、清分列表
- 什么情况下判定为“冲突”:
- 同一对象在不同需求中出现相反规则。
- 同一阈值、时效、次数、金额口径不一致。
- 同一状态机的起点、终点、流转条件描述不一致。
- 同一角色权限、数据范围、可见性规则前后不一致。
- 新需求声明“沿用旧逻辑”,但实际描述已改变旧规则。
- 冲突处理优先级规则:
- 优先看当前版本正式需求是否显式声明“替换/废弃/继承”旧规则。
- 若无显式声明,优先要求补充版本边界、生效范围、影响模块。
- 若涉及金额、库存、权益、权限、安全、合规,默认按高风险冲突处理,必须在需求阶段确认。
- 需求文档修改建议模板:
- 建议类型:规则合并 / 版本边界补充 / 阈值统一 / 状态机修正 / 权限口径修正 / 异常处理补充
- 建议描述:明确指出当前需求条目、冲突来源条目、冲突点和推荐修订文本方向
- 影响范围:说明影响的角色、模块、接口、数据口径、历史兼容逻辑、回归范围
### 2.4 能源卡管理
能源卡余额、充值记录、消费记录
## 8. 通用输出约束(供测试任务直接使用)
### 2.5 加油管理
油站管理、消费统计、油卡余额、加油记录、油费预付、油卡消费
- 需求分析必须同时覆盖功能目标、边界、角色、前置条件、状态流转、关键规则、风险与待确认项。
- 测试点必须同时覆盖主流程、异常流程、边界条件、数据校验、状态流转、权限控制、并发幂等、弱网超时、历史缺陷防御。
- 测试用例预期结果必须同时覆盖 UI/接口反馈和数据状态变化,不能只写“成功”或“失败”。
- 若需求存在歧义、缺字段、缺状态、缺口径,必须显式输出:
### 2.6 货主结算
收款对账、对账列表、收款单据、收款列表
```md
> ⚠️ 待确认:问题、影响范围、建议确认方向
```
### 2.7 监管上报(网络货运监管平台对接)
司机上报、车辆上报、路单上报、资金上报、业务/时长/质量/金额异常路单
- 对于高风险业务规则,若项目未明确给出,不得基于经验直接写死为真实规则,只能作为风险假设或待确认项输出。
### 2.8 发票管理
- 发票索取、发票列表
- 浙样红、方众数据导出
- 轨迹导出2、轨迹导出
- **滇运通**:运单/资金流水/司机/车辆导出、添加浙样红订单、司机开票
- **三十六匠发票**:轨迹异常运单、司机/车辆/运单/资金上传、上传查询
- **满货达发票**:承运人/司机/车辆/运单上传、运单其他上传、开票结果查询
- **滇运通开票**:承运人/司机/车辆/货源/运单上传、运单其他上传
### 2.9 客服运维
偏离预警、疲劳预警、超速预警、运输异常、评价管理、投诉处理、投诉意见反馈、司机评价、货主评价、撤单统计、轨迹事件、异常运单证明、好运宝车辆状态/日志记录、异常运单申诉/审核
### 2.10 补单管理 + 小象开票
补单操作、车队派单、承运人管理、创建运单
### 2.11 管理服务
- **合同管理**:仓储合同、运输合同
- **运输合同**:货主合同、承运合同、货源合同、委托书合同、代收协议、委托协议书
- **三十六匠协议**:三十六匠协议/承运合同/代收协议
- **车犇协议**:车犇协议/批量导出协议
- **同城运输**:运单调度、指派订单
- **下单管理**:订单开单、批量导入、运单管理、回单确认、异常管理、投诉管理
- **费用管理**:清分结算、运单费用、提现管理、司机费用、月结结算、申请清分
### 2.12 财务统计(报表)
自定义表、承运报表、货主报表、业务客户报表、平台客户报表、货主费用、司机费用、上游费用、电子对账单、运单利润、月度利润、运单开票、首页统计、数据统计
### 2.13 增值服务
- 运输合同(全类型:货主/承运/货源/委托书/代收协议等)
- 保险服务:保单查询
- 万金油服务:账户余额、储值返点记录、消费记录
### 2.14 税务管理
平台信息、货主信息、司机信息、运单上报、授权委托、货主开票
### 2.15 ETC管理 + ETC开票管理
企业注册、实时开票、历史开票、运单上报、长途分单、ETC开票申请/记录、ETC红冲发票查询、ETC开票运单、已抵扣/未抵扣发票、运单开票申请、运单ETC抵扣、ETC抵扣管理
### 2.16 物流金融
放款管理
### 2.17 司机开票管理
开票公司管理、承运人管理、承运人临登查询、运单开票查询
### 2.18 系统管理
- **协议管理**:web协议、司机协议、货主协议、委托书
- **网站门户**:轮播图片、新闻管理、门户信息、门户配置、图片预览、客户案例
- **消息管理**:应用通知管理、短信发送管理、消息推送记录、验证码统计表、司机催款记录、超时异常运单、超时未派单
- **运维工具**:问题咨询、机构管理、自动更新、行为日志、扣费记录、合同模板、操作管理、用户登录/创建记录、光大手工调账、车队长运费任务运维、资源控制
- 其他:导航管理、数据工具、权限创建、修改密码、平台企业、机构充值、机构配置、开票信息、消费记录
## 3. 目标用户与端
| 端 | 平台 | 用户角色 | 主要功能 |
|---|------|---------|---------|
| 运八平台端 | Web管理后台(Element UI SPA) | 运营/财务/客服 | 全部管理功能(352个菜单项) |
| 运八司机端 | Android/iOS App | 司机/车队长 | 接单、运输、上传资料、提现 |
| 运八货主端 | Android/iOS/PC | 货主 | 发布货源、结算、付款 |
- **司机端包名**com.arpa.ynchenggangdriver
- **司机端主Activity**com.arpa.ntocc.MainActivity
## 4. 业务边界与禁用能力
- 营销活动/优惠券/积分体系:本项目不支持(marketing_rules.md标记)
- 司机同时接多单:默认不允许(allowMult=0
- 运输中车队长调单:默认不允许(allowCaptainDispatchInTransit=0
- 装卸货后台操作:默认关闭(loadOrUnloadInBackground=0
- 装货荷载吨数校验:默认关闭(loadTonnageVerification=0
- 重新装卸货:默认不允许(secondUploadDetail=0
- 司机授权协议:默认不需要(needDriverLicense=0
- 蚂蚁区块链/找油网服务:关闭
## 5. 核心业务规则
### 5.1 结算与支付规则
- 支付方式:云企付二期(arpa_2)
- 支持银行:浦发银行、快钱、光大银行、网商银行
- 金额计算必须可追溯,前后端一致,重复提交不重复扣减
- 保费支付人:默认货主支付(insuredPayer=1
### 5.2 运单核心规则
- 运单核心状态机:待运输 -> 运输中 -> 已卸货 -> 已结算 -> 已垫付(垫资)/已打款
- 禁止跳状态、逆状态、重复终态处理
- 异常中断后状态应可解释、可恢复、可追踪
### 5.3 垫资规则
- 垫资运单条件:货主标记垫资 AND 货源标记垫资
- 非垫资运单条件:货主或货源任一未标记垫资
- 垫资流程:平台先行垫付运费给司机 -> 货主后还款给平台
### 5.4 费用结构
- 货主合计付款 = 基础运费 + 服务费
- 能源费:货主配置比例金额,从运费转化为能源费
- 居间费:手动清分车队长收款部分
- 清分司机费用:手动清分司机收款部分
- 车队长收款 = 居间费 + 1%税费
## 6. 技术与集成约束
### 6.1 关键依赖系统
- 认证中心:ntocc-basic-api/authorize(滑块验证码 + 图片验证码 + RSA加密传输)
- 高德地图:定位、轨迹、电子围栏(Web/Android/iOS三端Key
- 银行通道:浦发银行、快钱、光大银行、网商银行
- 滇运通:司机代开发票系统
- 华为OBS:文件存储
- 短信平台
- 三十六匠/满货达/浙样红/车犇:第三方开票/协议平台
### 6.2 技术栈
- 前端:Vue.js + Element UI + 高德地图 JSAPI
- 后端:Spring Boot 微服务(ntocc-basic-api / ntocc-admin-api / ntocc-tps-api等)
- 网关:OpenResty
- 数据库:MySQL + Redis
- 文件存储:华为云 OBS
- 支付:云企付二期
## 7. 高风险场景
### 7.1 资损风险
重复打款/退款、运费/服务费/能源费/居间费/税费计算错误、垫资与非垫资混判、调账金额错误
### 7.2 可用性风险
支付回调丢失/延迟、银行接口不可用、高德地图服务不可用、装卸货图片上传失败
### 7.3 数据风险
装卸货地址与电子围栏偏差、GPS轨迹数据缺失、合同/回单文件丢失、多机构数据隔离
### 7.4 登录安全
管理端登录:滑块验证码 + 图片验证码(needImage) + RSA密码加密(authorize/encrypt) + 多机构选择登录
## 8. 测试策略偏好
### 8.1 P0优先覆盖
登录鉴权、运单核心主流程(接单->运输->卸货->结算->打款)、金额计算(运费/服务费/能源费/居间费/税费)、运单状态流转、支付流程(货主打款/财务打款/垫资打款)、权限隔离
### 8.2 必测异常场景
参数非法、重复提交(幂等)、并发提交、超时重试、依赖服务不可用、越权操作、状态已变化后操作、回单/凭证缺失
### 8.3 非功能重点
弱网/断网(APP端)、并发打款、机构间数据隔离、接口幂等、Excel大数据量导出(默认20000条)、装卸货图片上传(大文件/OSS)
## 9. 需求冲突判定口径
同一运单状态流转规则/同一费用计算口径/同一角色权限/垫资条件在不同需求中不一致均视为冲突;新需求声明"沿用旧逻辑"但实际描述已改变旧规则视为冲突。
## 10. 通用输出约束
需求分析必须覆盖功能目标/边界/角色/前置条件/状态流转/关键规则/风险;测试点必须覆盖主流程/异常流程/边界条件/数据校验/状态流转/权限控制/并发幂等;测试用例预期结果必须同时覆盖UI反馈和数据状态变化;金额相关用例必须验证计算精度;权限相关用例必须验证机构数据隔离;涉及GPS/地图的功能需考虑坐标偏移和精度问题。