refactor(locators): 文本锚点优先的多候选定位 + 失败 DOM 快照

定位健壮性原则: 语义文本 > 组件库稳定 class > 层级结构 > nth-child/绝对路径。

Web (freight_accounting_page):
- 新增 BasePage.first_matching(*候选): 文本锚点优先命中, 旧结构路径兜底
- 13 处定位器改造: 核算/审核通过/确认打款按钮(get_by_role 文本)、
  车队长/收款模式表单(.el-form-item label 锚定)、光大单选(label:has-text)、
  获取验证码/验证码输入(按钮同行锚定)、message-box 确定等
- 手机号单选保留旧结构路径优先(弹窗含多组电话单选, 文本有歧义)
- 已实况验证: 获取验证码/确认打款/光大锚点唯一命中

App (freight_flow_page):
- 货源 tab: text("货源") 文本锚点优先(登录流程持续验证), 位置序号兜底
- 货源单列表项: RecyclerView(lRrcyclerView) 第一个子项, 全局 instance(3) 兜底
- 选图按钮(ImageView instance(2))保留: 需在途订单才能探测, 当前可用

失败诊断:
- Web 失败时 attach 页面 DOM 快照, App 失败时 attach page_source 到 Allure

验收: 实况锚点解析全部唯一命中; 两条 E2E 通过且 DB 终态均为全流程完成
(status=5, 已结算, 双支付完成)。
This commit is contained in:
xst
2026-09-02 14:59:27 +08:00
parent 2b4b2a4050
commit dd0877653e
110 changed files with 386 additions and 94 deletions
+36
View File
@@ -0,0 +1,36 @@
2026-09-02 13:56:42 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:56:42 [INFO] tests.cross_end.test_driver_to_settlement — 跨端 E2E: 司机APP → 管理端核算打款 完整流程开始
2026-09-02 13:56:42 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:57:02 [INFO] tests.cross_end.test_driver_to_settlement — -> 接单流程完成
2026-09-02 13:57:28 [INFO] tests.cross_end.test_driver_to_settlement — -> 装货流程完成
2026-09-02 13:57:46 [INFO] tests.cross_end.test_driver_to_settlement — -> 卸货流程完成
2026-09-02 13:57:48 [INFO] tests.cross_end.test_driver_to_settlement — -> 运输单号: RHJC040026090100011353400148
2026-09-02 13:58:00 [WARNING] tests.pages.admin.freight_accounting_page — 等待列表稳定超时(10000ms),继续按原逻辑执行
2026-09-02 13:58:07 [INFO] tests.cross_end.test_driver_to_settlement — -> 运费核算完成: RHJC040026090100011353400148
2026-09-02 13:58:12 [INFO] tests.cross_end.test_driver_to_settlement — -> 运单审核完成: RHJC040026090100011353400148
2026-09-02 13:58:19 [INFO] tests.cross_end.test_driver_to_settlement — -> 垫资-财务打款完成: RHJC040026090100011353400148
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — -> 垫资-货主打款完成: RHJC040026090100011353400148
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — 跨端 E2E: 司机APP → 管理端核算打款 完整流程结束!
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — 运输单号: RHJC040026090100011353400148
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — 核算完成: True
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — 审核完成: True
2026-09-02 13:58:29 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:58:35 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:58:35 [INFO] tests.cross_end.test_driver_to_settlement — 跨端 E2E: 司机APP → 管理端核算打款(车队长全额收款)完整流程开始
2026-09-02 13:58:35 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 13:58:54 [INFO] tests.cross_end.test_driver_to_settlement — -> 接单流程完成
2026-09-02 13:59:20 [INFO] tests.cross_end.test_driver_to_settlement — -> 装货流程完成
2026-09-02 13:59:37 [INFO] tests.cross_end.test_driver_to_settlement — -> 卸货流程完成
2026-09-02 13:59:39 [INFO] tests.cross_end.test_driver_to_settlement — -> 运输单号: RHJC040026090100011355320149
2026-09-02 13:59:50 [WARNING] tests.pages.admin.freight_accounting_page — 等待列表稳定超时(10000ms),继续按原逻辑执行
2026-09-02 13:59:58 [INFO] tests.cross_end.test_driver_to_settlement — -> 运费核算完成(车队长全额收款): RHJC040026090100011355320149
2026-09-02 14:00:02 [INFO] tests.cross_end.test_driver_to_settlement — -> 运单审核完成: RHJC040026090100011355320149
2026-09-02 14:00:09 [INFO] tests.cross_end.test_driver_to_settlement — -> 垫资-财务打款完成: RHJC040026090100011355320149
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — -> 垫资-货主打款完成: RHJC040026090100011355320149
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — 跨端 E2E: 司机APP → 管理端核算打款(车队长全额收款)完整流程结束!
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — 运输单号: RHJC040026090100011355320149
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — 核算完成: True
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — 审核完成: True
2026-09-02 14:00:17 [INFO] tests.cross_end.test_driver_to_settlement — ============================================================