腾讯TMQ在线沙龙|测试与图像识别

测试与图像识别

活动时间:2016年3月16日 QQ群视频交流

活动介绍:TMQ在线沙龙第十七期分享

本次分享的主题是:测试与图像识别

共有43位测试小伙伴报名参加活动,在线观看视频人数 28人~想知道活动分享了啥吗?往下看吧!

活动嘉宾

嘉宾简介

朱伟鸿,腾讯测试工程师,现在腾讯手机管家测试团队负责KingRoot软件的测试工作,主要负责高级权限部分的功能以及性能的测试。对高权限应用软件的测试测试有着深入了解。

分享主题

  • 什么是图像识别
  • 图像识别中所运用要的算法
  • 如何运用图像识别进行测试

问答环节

(1) 问题:请问为什么要使用图像识别的方法来写测试脚本?和普通的基于页面元素获取的脚本相比,有什么优缺点?

答:与基于页面基本元素的脚本相比,用图像识别的方法的使用场景可以更多样化,因为它不用基于uiautomator,所以能在H5以及游戏的测试上使用。它只是需要截取屏幕,然后再实现一个坐标点击的方法即可达到基于页面基本元素能做到的事情。

(2)提问:怎么验证测试结果(也就是怎么写assert)?

答:在测试过程中因crash或运行结束导致工具退出都会有一个返回值,可以通过错误来进行assert。

(3) 遇到登录等需要输入的情况,如何处理?

答:登陆这个可以通过预先给定登陆的图片,在点击做好判断,如果遇到登陆窗口,则在对应位置输入账号和密码即可。

(4) 问题:判断是否节点遍历过是通过图片识别计算的?页面互相跳转怎么解?

节点的遍历与跳转是通过图像识别的方法来进行计算的,主要是判读截图是否有变化来断定当前页面是否有跳转。

(5) 去除偏离大部队的噪点,具体如何实施?

答:偏离大部队的噪点可以采用聚类或者区均值的方法来判断,当前采用的是取均值然后再去除离开均值太多的点,然后再取一次均值来达到。

(6) 执行性能怎么判断?

答:如果是手机的性能则可在软件运行过程中实时获取性能信息来达到,如果是PC的性能,暂时这个不考虑。

(7) 提问:如果是同一个页面 有两个或者多个相同的图片,能否找到指定的图片,举个例子:评论部分,有多条评论,每个评论都有一个点赞按钮,我想找第几个的点赞按钮,判断按钮的状态。这种可以实现么?

答:对于一个页面中出现两个一样的图片,的确是会导致判断失效,但可以通过页面裁剪的方法,可以从上往下逐步去找,也可以从中心往外扩散去找,通过这样来依次进行匹配。

(8) 图像遍历输入的特征码是什么,不同的控件特征码如何区分?

答:遍历的特征码有两个,一是canny得到的轮廓中心点,一个是uiautomator得到的isclickable等于true的点。不同控件的特征码暂时不做区分。

(9) candy的轮廓与view.xml识别的控件有重合区域,怎么判重?

答:如果两个有重合的区域有两种方法可以去掉,第一软件会取出相近只有几个象数的点,第二如果uiautomator如果被canny轮廓包围了,这个区域是会被排除的。

(10)两次进入这个页面,健康分从99变成100,是算同一个页面还是两个页面?

答:是否判断为一个页面是通过图片相似度来判断,只要按照业务需要对阈值进行调整即可。

(11)基于图像识别,怎么判断关键点,是否可以点击。是否存在找出的关键点,不可点击,如何绕过

答:基于图像识别其实不需要关注关键点可否点击,有的时候有些位置往往不可点击,但由于设计出来比较特别,往往也会有较多用户去点,所以暂时没必要去判断该点是否点击。

(12)能不能通过一个截图, 整个页面的一部分进行对比 而不是整个页面进行对比

答:可以做到的,第一可以通过sift来匹配,看能是否匹配得到,第二也可以用从小及大的方法来进行匹配。

获奖名单

ID:周欣 270***823

恭喜以上一位同学获得TMQ本次沙龙活动听众奖;

本次奖品是由TMQ 官方出品《移动APP性能评测与优化》新书哦

原文发布于微信公众号 - 腾讯移动品质中心TMQ(gh_2052d3e8c27d)

原文发表时间:2017-03-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技大本营的专栏

学术 | DeepMind最新研究:使用更简单的环境就能检测AI是否安全

随着人工智能系统在现实生活中变得通用和实用,确保系统的安全运行变得越来越重要。迄今为止,大部分技术人工智能安全研究都集中在,对不安全行为的性质和原因的理论学习上...

28350
来自专栏葡萄城控件技术团队

应用系统中常见报表类型解析

根据报表的布局、数据源结构、打印方式和数据分析方式,可将应用系统中的报表分为以下类型: 清单报表 图表报表 分栏报表 分组报表 交叉报表 并排报表 ...

22950
来自专栏玩转全栈

机器学习-开门篇之数据获取(一)

机器学习的流程大概分为六个步骤:获取数据,检查数据合理,数据清洗,建模,评估模型,部署。

53060
来自专栏机器之心

学界 | 中科院计算所开源Easy Machine Learning:让机器学习应用开发简单快捷

选自Github 机器之心编译 今日,中科院计算所研究员徐君在微博上宣布「中科院计算所开源了 Easy Machine Learning 系统,其通过交互式图...

33650
来自专栏编程微刊

使用bootstrap的栅栏实现五列布局

我们知道,在使用Bootstrap栅格的时候,我们可以对网页方便的进行模块分割。Bootstrap 包含了一个响应式的、移动设备优先的、不固定的网格系统,可以随...

22710
来自专栏iKcamp

基于 Electron 的爬虫框架 Nightmare

作者:William 本文为原创文章,转载请注明作者及出处 Electron 可以让你使用纯 JavaScript 调用 Chrome 丰富的原生的接口来创...

58860
来自专栏编程

基于Python的人脸识别库,离线识别率高达99.38%!

-欢迎 原文该项目是要构建一款免费、开源、实时、离线的网络 app,支持组织者使用人脸识别技术或二维码识别所有受邀人员。有了世界上最简单的人脸识别库,使用 Py...

30880
来自专栏AI科技大本营的专栏

这一次,我拒绝了Python,选择了Go

最近,我用一个以 Go 语言为后端的软件,实现了一个人脸识别项目。它能够识别出上传照片中的人像 (如流行歌手)是谁。这听起来不错,我决定试一下也给你们介绍一下项...

21740
来自专栏FreeBuf

大话蜜罐日志分析

*本文原创作者:Leon不会玩QEMU,属Freebuf原创奖励计划,未经许可禁止转载 0×00 前言 在部署蜜罐之后,会产生大量的日志,对于威胁情报而言,我们...

41490
来自专栏携程技术中心

干货 | 机器学习算法线上部署方法

作者简介 潘鹏举,携程酒店研发 BI 经理,负责酒店服务相关的业务建模工作,主要研究方向是用机器学习实现业务流程自动化、系统智能化、效率最优化,专注于算法实践和...

99760

扫码关注云+社区

领取腾讯云代金券