前端测试 使用机器视觉识别控件

king.yu · 2023年08月26日 · 3638 次阅读

背景

监控新的页面 ui 是否发生改变,本文只是提供一种差异对比的实现思路。

具体实现

  • 页面控件识别
    通过 opencv 识别页面的轮廓,基于轮廓信息合并重合的控件,框选标注识别控件。(基于这个实现也可以实现 app 端页面的深度遍历)

  • 生成页面布局
    基于识别的控件位置以填充的方式生成布局图。

  • 页面差异识别
    对基线布局图 p0 和当前的布局图 p1 进行差值运算生成新的布局差异图 p3,如果布局差异图 p3 中的控件位置完全存在于 p0 或者 p1 中,那么这些控件就是新增/减少的;

  • 注意点
    对于变化的区域(类似广告位),需要增加页面的忽略区域,在页面处理的过程中需要将该区域全部替换为空白区域;如果不是全页面区域监控,可以只关心 roi 区域的差异。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册