Files
cmautobuy/docs/task/177-兼容非滚动面板静态尺码采集.md
T

2.4 KiB

177 兼容非滚动规格面板的静态尺码采集

背景与目标

提交提示型非滚动规格面板已经能识别尺码文字,但第二规格续页逻辑仍强制要求滚动容器,导致已经识别出全部尺码后报“无法定位第二规格滚动区域”。目标是在不放宽未知页面校验的前提下,正确接受强证据确认的静态尺码列表。

最终方案

  • 建立第二规格续页上下文前,先检查是否存在第二规格滚动区域。
  • 没有滚动区域时,只有现有强证据能确认完整非滚动规格面板,才按当前控件树顺序返回第二规格。
  • 静态分支继续过滤非规格文字,并保留标题明确数量的完整性校验。
  • 普通未知结构仍返回原错误;横向和纵向第二规格继续使用原续页上下文。

改了哪些

  • client/src/pdd_collect_service.py:增加强证据非滚动第二规格的静态采集分支。
  • client/test/test_pdd_collect_service.py:补充静态尺码、不滑动、明确数量不足和强证据边界测试。

验收结果

验收标准 结果
提交提示型非滚动面板返回全部可见尺码 通过
静态尺码采集不执行滑动 通过
未经强证据确认的结构不进入静态分支 通过
标题明确数量但采集不足时仍安全失败 通过
横向、纵向第二规格续页测试保持通过 通过
Client 全量测试通过 通过

测试

  • 执行的命令:在 client 目录执行 C:/Python310/python.exe -m unittest discover -s test -p 'test_pdd_collect_service.py'
  • 结果:67 个采集测试全部通过。
  • 执行的命令:在 client 目录执行 $env:QT_QPA_PLATFORM='offscreen'; C:/Python310/python.exe -m unittest discover -s test -p 'test_*.py'
  • 结果:442 个 Client 测试全部通过。
  • 额外验证:使用本机失败时临时保存的控件树进行只读验证,得到 M、L、XL、2XL、3XL,滑动 0 次;原始 XML 未提交。
  • 没验证到的部分:未连接真机重新执行商品 823647390597;实际采集提交 Admin 的闭环等待用户验收。

相关提交

  • 2088bc3 fix: 兼容非滚动面板静态尺码采集 (#177)