当前位置:首页 > 闲鱼技术 > 正文内容

你一定想不到,实现一个AI自动化测试工具就这么简单!(基础篇)

xianyu3年前 (2021-03-06)闲鱼技术287

作者:闲鱼技术-金喏

微信号:pps788888
添加微信, 免费测试软件
复制微信号

1.前言

闲鱼质量团队一直致力于交付高质量的app给用户,当前随着AI技术不断发展,TensorFlow大热,也给测试手段带来了更多种可能,本文接下来给大家介绍AI在闲鱼测试的一点实践:如何应用AI技术通过图片找bug。

2.模型选型

不需要理解业务就能发现的bug主要有整体页面空白、部分控件显示异常和文本异常这几类。对于整体空白图片,发现它们的共同特征是比较明显:大面积空白或者中心区域报错,所以选择使用TensorFlow搭建的简单CNN模型来识别正常图片和异常图片。对于文本异常这类包含乱码的图片,则是用OCR+LSTM建立了一个简单的汉字识别模型来识别图片中的文本内容后判断是否存在乱码。
训练以上模型的样本则来源于bug历史截图和mock的正向数据样本。

3.模型重训练——提高模型识别准确率

流程图.png

初始模型在训练时样本有限,但随着app不停更新迭代,图片检测样本数量的逐渐增多,会出现某些新页面被错误分类,要解决这类误报问题,亟需加入模型重训练。
显然靠人肉启动模型重训练并替换旧模型成本太高,所以在前端实现了个勾选图片去重训练的入口,通过Jenkins定时任务,读取所有重训练图片并执行重训练脚本,并把旧模型替换成新生成的即可。经过几轮自动迭代后模型识别准确率有大幅提升。

4.图片处理——提升结果的人工甄别效率

4.1特殊截图

特殊图片.png

有些截图可能是存在大面积空白,但从业务角度上来说这类图片是正确的,比如搜索中间页。此类若不处理,每次都会被识别为异常图片上报,浪费大家check的时间,若放入模型进行重训练又有导致模型不收敛的风险。为了解决这类图片,维护了一个图库,对模型识别为异常的图片,会与图库中的图片进行对比,如果与图库中任意一张相似度超过设定阈值,即认为该图片可被忽略不用上报。

4.2图片去重

目前遍历截图任务为了保证页面上所有元素都取到,单次遍历任务会至少访问同一个页面两次;同时遍历时,为了方便页面上下文分析,会对点击元素用红框标记。这带来了一个问题:待识别图片集中,同一个页面会有多张重复截图、且同一页面上可能会在不同的地方有红框标记。人工检验大量重复图片识别结果难免视觉疲劳,所以展示去重后的结果可以大大提升人工甄别效率,减少成本。

4.2.1解决办法

图片数量大,且不确定这次遍历截图了多少不同页面时,可以使用层次聚类算法解决这个问题。本文采用的是自底向上的聚类方法,即先将每一张截图分别看成一个簇,然后找出距离最小的两个簇进行合并,不断重复到预期簇或者满足其他终止条件。

4.2.2实现[2]

1)计算图片之间的距离

先将图片转换成w*h*3维向量,把向量间的欧式距离作为图片之间的距离,图片越相似,距离越小。

一次app遍历得到的n张图片要完成聚类,先单张图片按照上述处理后,再整体拼接成 n*(w*h*3)的矩阵,做为样本集。

2)计算簇之间距离的方法

single:两个簇中距离最近的两个样本的距离作为这簇间的距离
complete:两个簇中距离最远的两个样本的距离作为这簇间的距离
average:两个簇间样本两两距离的平均值决定,解决个别异常样本对结果对影响,但计算量比较大
ward:离差平方和,计算公式较复杂,要想了解具体计算公式和其他计算方法见计算簇之间距离的方法。
通过尝试后发现ward效果比较好,所以最终选用ward作为计算簇之间距离的方法。

执行上述语句后,聚类完成。

3)临界距离选择

该值直接影响聚类的效果,临界距离过小,会导致某些相似图片不能聚集到一类,临界距离过大,又会导致不是同一个页面的图片聚在一起,所以如何选一个合适的距离非常重要。
实验发现,如果图片被页面异常模型识别为异常图片时,往往这类图片之间的相似性越高,为了不错误聚类不同的异常页面,分别对识别为异常和正常的图片进行聚类,并且异常类的临界距离会设置更小一点。

5.总结与展望

图片1.png
图片2.png

目前该工具对整体页面异常的识别效果较好,文本异常的识别准确率也在丰富样本的过程中不断提升。


接下来我们会集成LabelImg工具,用TensorFlow搭建SSD模型来识别控件异常的图片,此外元素/文字布局错乱等问题页面识别、页面操作预期结果识别也在不断尝试中。使用图片处理和错误识别技术,作为质量保证的一种方法,我们会持续探索下去。

<

扫描二维码推送至手机访问。

版权声明:本文由中客网络发布,如需转载请注明出处。

本文链接:http://www.zzzmc.cc/28.html

分享给朋友:

相关文章

你要知道的闲鱼运营五大技巧

你要知道的闲鱼运营五大技巧

  在闲鱼上,你一定不要按部就班的运营你的账号,那样不仅会浪费你的大量时间,还不能提高你的闲鱼店铺水平。那应该要怎样运营才能提高效率呢?下面就让小编来分享小编的方法。   方法一:凭借着芝麻服务信用标准分在企业同类产品店铺中脱颖而出。芝麻信用分有什么用呢?如果你的芝麻信用分高的话,你将会成为享有社会更多的人不一样的权利。比如:较高的流量与曝光量,宝贝下方会显示你的信用度进行较好,这样你的宝贝我们就能可以获得发展更多不同顾客的认可,宝贝的出单率也会较高。   所以如果你的芝麻信用分数不高,那么你可以放弃这个账户,用一个更高的信用分数账户重新注册商店。 如果你不想放弃你的商店,你必须通...

排名过低,你有过这种烦恼吗?

排名过低,你有过这种烦恼吗?

  排名过低,你有过这种烦恼吗?      2021年01月08日   闲鱼流量   52 views   0   用闲鱼卖东西的卖家相信都会有这种烦恼,那便是排名过低。排名过低会影响什么呢?其实排名过低便意味你的浏览量下降,很少有人能看到你的东西。你所上架的商品无人问津, 商品卖不出去,就没有收入。这对于许多人来说是非常痛苦的。那么为什么会排名过低呢?真正的原因在这儿。   关于排名过低的问题,其实总体上来说就是四个原因。   原因一:你的闲鱼权重下降。在闲鱼上,权重越高,你的浏览量也越高。如果你的权重不高的话,那么你的浏览量就会下降,你的排名...

闲鱼技巧,如何打造闲鱼流量店铺

闲鱼技巧,如何打造闲鱼流量店铺

  【闲鱼批量上架软件】 闲鱼是一个很大的二手交易平台,很多人都想在上面捞一笔,但是不知道怎么去做,今天我就给大家来说一说,怎样去操作自己的闲鱼店铺。   1.准备3张电话卡,去注册三个闲鱼店铺,小规模的话建议使用宽带的电话卡,这样你就拥有了三个闲鱼店铺,能够做活的几率也会更高。   2.准备手机,做到一机一店,如果需要定位到非本地,建议使用外置硬件或者软件去更改定位,虽然闲鱼发布可以任意选择定位,但尽量不要在闲鱼上修改定位。因为修改在江浙沪一带,因为定位在这个地方做活的几率也会大一点。   【闲鱼批量上架软件】 3.选品,选品一定要慎重,单品利润低就一定要卖这个平台的主流客...

闲鱼技术,指导你被限流后怎么解决?

闲鱼技术,指导你被限流后怎么解决?

  闲鱼技术包括好多的功能,只要你能更好的运用,不但能促进你店铺流量,同样也能促进店铺商品销量。对于店铺出现限流,影响到你店铺流量以后,可以通过闲鱼技术尽快解决限流问题,才能使你店铺流量大,销量也会逐渐增加。   当自己的店铺出现限流,不能为店铺带来销量以后,这时首先要通过闲鱼技术,要赶快删除被限流的商品,因为闲鱼它讲究的是细节,在细节操作这方面,只要你运营的比较好,当出现限流这种情况以后,要马上针对限流的商品,尽快的删除,就会尽快解决店铺被限流这样的一个棘手问题。   再把需要删除的商品下架以后,这时不能坐以待毙,要重新上架新的商品,并且要注重上架商品的关键词名称,包括上架商品的...

咸鱼应该如何改善他们的曝光?

咸鱼应该如何改善他们的曝光?

  【闲鱼流量】咸鱼应该如何改善他们的曝光?      2020年11月03日   闲鱼流量   53 views   0   闲鱼是一个国家大型的二手市场交易信息平台,因为开店的门槛低,只需要进行一个比较高的芝麻信用管理账号,这样可以的话,就能够通过开启学生一个闲鱼店铺,所以我们很多不同的人都想把闲鱼当做自己的副业,但是对于自己的曝光一直上不去,没有人浏览自己的店铺,就更不会有人来买了,所以没有今天我就来给大家说一下怎样才能提高学习自己的闲鱼曝光率。   我们的价格必须低于淘宝和拼多多,否则,产品只会有意见,不会有成交量,因为闲鱼是二手交易平台,人们...

闲鱼应该怎样提高自己的浏览量和排名

闲鱼应该怎样提高自己的浏览量和排名

  【闲鱼流量】闲鱼应该怎样提高自己的浏览量和排名      2020年09月11日   闲鱼流量   158 views   0   【闲鱼浏览量】闲鱼的排名直接关系到自己的浏览量和成交量,所以很多的商家都会很重视,但是还是有很多商家因为自己的店铺排名较低,浏览量下降而苦恼。那我们应该怎样去解决自己的排名低的问题?今天我就来为大家讲解一下如何提高自己的闲鱼排名。   【闲鱼浏览量】想要做好闲鱼店家,那我们闲鱼的违规状况和健康程度都是很重要的。我们应该注意自己的闲鱼账号在交易过程中是否有违规状况让自己扣分、退款纠纷,是否有不良评论,这些也关系到鱼闲鱼账...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。