Android自动化测试之UIAutomator(三)---比对测试截图
来源:互联网 发布:四量指标公式源码 编辑:程序博客网 时间:2024/05/18 01:27
系列回顾:本系列主要从开发的角度介绍UiAutomator的使用,总共包括三篇:
基础入门: Android自动化测试之UiAutomator(一)
技巧篇: Android自动化测试之UiAutomator(二)(未完成)
比较工具篇 :Android自动化测试之UiAutomator(三)---比对测试截图
本文是第三篇。
转载请注明出处:http://blog.csdn.net/xzy2046/
以下是正文:
1.简介:
本文适合所有以图片作为输出的自动化开发工具(不仅限于Android)。
当我们进行一组自动化测试后,除了通过断言,往往还会采用截图比对的方式分析测试结果,这种情况下人力再次成为效率的瓶颈,能否通过一定的方式对图片进行预处理,将Diff 的区域标出,方便开发人员进行分析呢?
本文的方法是通过一个bash脚本获得图片的不同之处,并生成一个可视化的html文件。以帮助开发/测试人员快速分析测试结果。
2.环境安装:
适用环境:ubuntu,其他平台未测试。
依赖程序:imagemagick
安装方法:sudo apt-get install imagemagick
3.正文
首先介绍一下ImageMagick,这是一个图像处理工具,今天我们只会用它的两个功能:1、图片比较 2、生成缩略图。
第一步,我们准备一组基准图片,用于测试完成后的比对标准。这里我们将图片放在/tmp/base目录下。下图为我们的示例图片:
第二步,我们将自动化测试获得的截图放在/tmp/new目录下。下图为我们测试后获得的图片:
接下来我们执行imagemagick的compare命令:
compare -metric AE /tmp/base/test.png /tmp/new/test.png /tmp/result/test.png
执行该命令后我们将获得一个Diff图片,如下:
通过该命令,我们将两张图片不同的地方高亮显示了,肉眼确认时只需要关注高亮的部分。
第二步:生成HTML文件,将目录下所有文件和Diff出的图片做成缩略图,并以列表的方式显示:
首先,通过Shell遍历目录:
<pre name="code" class="html">function compare_png(){ for file in ` ls $BASEPATH ` do if [ -d $BASEPATH$file ] then compare_png $BASEPATH$file else fi fidone
接下来在else语句中加入比对语句:
diff_count=`compare -metric AE $BASEPATH$file $NEWPATH$file $EXPORTPATH$file 2>&1`
将比较出的Diff像素数传入diff_count变量。
然后通过imagemagick 的convert命令获取宽度为160像素的缩略图,这些缩略图将用于HTML文件的显示
convert -thumbnail 160 $BASEPATH$file $File1convert -thumbnail 160 $NEWPATH$file $File2convert -thumbnail 160 $EXPORTPATH$file $File3
echo "<br><tr>">>$result_html echo "<td><font style=\"color:red;\">$file</font></td>">>$result_html echo "<td><font style=\"color:red;\">$diff_count</font></td>">>$result_html echo "<td><font style=\"color:red;\">"Failed"</font></td>">>$result_html echo "<td><a target=_blank href=$BASEPATH$file><img src=$File1></a></td> ">>$result_html echo "<td><a target=_blank href=$NEWPATH$file><img src=$File2></a></td> ">>$result_html echo "<td><a target=_blank href=$EXPORTPATH$file><img src=$File3></a></td> ">>$result_html echo "</tr>">>$result_html
以下为处理结果:
第一列为图片名称,第二列为差异像素数。三幅图片分别为基准图片,测试截图,和生成的Diff图片。
Shell脚本下载地址:
http://download.csdn.net/detail/xzy2046/8167831
- Android自动化测试之UIAutomator(三)---比对测试截图
- Android自动化测试之UIAutomator
- Android自动化测试之UIAutomator
- android自动化测试Uiautomator源码分析之三
- 自动化测试之uiautomator
- android uiautomator自动化测试
- UiAutomator android自动化测试
- Android-自动化测试UIAutomator
- Android自动化测试uiautomator
- Android UiAutoMator自动化测试
- Android Uiautomator 自动化测试
- Android Uiautomator 自动化测试
- android自动化测试工具【UiAutomator】——截图功能
- Android自动化测试(UiAutomator)——截图功能
- Android自动化测试之UIAutomator(一)
- android自动化测试之Uiautomator-UiDevice-API
- Android自动化测试之 Uiautomator-UiDevice-API
- Android自动化测试之UIAutomator(一)
- JAXP JAXB JAXR JAX-RPC JAXM [转]
- 《JAVA与模式》之适配器模式
- 【DB.Oracle】PL/SQL Developer export/import excel 数据
- 推荐一些大神的博客
- 诺基亚手机再也不会有了
- Android自动化测试之UIAutomator(三)---比对测试截图
- ION基本概念介绍和原理分析
- 第十二周项目三(5)——输出一个数的二进制
- 度序列与Havel-Hakimi 定理
- 软件著作权登记办理流程
- jquery的$.extend和$.fn.extend作用及区别
- MySQL里获取当前week、month、quarter的第一天/最后一天
- JavaScript push() 方法
- Android实战技巧:如何在ScrollView中嵌套ListView