zoukankan      html  css  js  c++  java
  • 自动化测试框架 hierarchyViewer、Uiautomator、Appium的区别比较!

    一、HierarchyViewer:

      优点:1)能够可视化的角度直观地获得UI布局设计结构和各种属性的信息

         2)使用hierarchyviewer.bat来检索手机界面布局

      缺点:1)稳定性差,出现过在获取某些控件时,概率性的会存在获取不到的情况

         2)性能不好,使用HierarchyViewer功能时进行测试,获取控件等时的执行效率很低,导致整个测试的时间使用特别长,消耗调试时间

         3)只能用MonkeyImage的SameAs来做截图对比

         4)资料稀缺,不仅百度,google也是一样

         5)HierarchyViewer相对应的API,API的提供的方法,没有uiautomator提供的详细和多

         6)新手学习起来较难

    二、Uiautomator:

      优点:1)可以对所有操作进行自动化,API封装的较多,使用起来容易理解

         2)可以跨应用测试,Google原生,其稳定性和后续的维护更新可以得到保障,运行时也有更多的权限

         3)可支持eclipse中使用

         4)可以跨进程操作,这点比起其它基于instrumentation框架的自动化工具如Robotium是无法直接做到的

         5)运行速度快

         6)使用的人多,网上搜索资料也较多,遇到的问题基本都能搜索到对应的解决方式

         7)明晰API,提供最灵活精确的控制。UiAutomator框架对外提供的API,主要有UiDevice、UiSelector、UiObject、UiCollection和 UiScrollable等

         8)使用uiautomatorviewer.bat来检索手机界面视图

         9)支持的语言可以有python、java等,google推出的底层框架使用java编写的,但是在网上可找到python封装的底层框架,因此也可使用python进行自动化测试

         10)支持设备无源码测试

                 11)新手学习起来较容易

      缺点:1)android版本需要高于4.0以上

         2)需要API17及以上

         3)不支持Webview,所以一般无法对浏览器应用进行测试

         4)基于Junit 3, 相对于Junit4, Testing等测试框架,Junit 3不具备许多功能

    三、Appium

      优点: 1)可支持eclipse中使用

          2)支持webview

          3)支持跨平台,android和ios都可用,开源,支持的语言多,如:java、python

          4)基于Junit 3/Junit4,功能齐全

          5)支持设备无源码测试

                    6)可以跨应用测试

          7)添加'unicodeKeyboard':True,    #使用unicode编码方式发送字符串 ,'resetKeyborad':True,#将键盘隐藏起来    可解决中文输入法问题
                 8)新手学习起来较容易

      缺点:1)非google原生

         2)无法脱机跑

         3)Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架,说到底,还是使用了uiautomator框架

         4)在运行脚本上感觉执行速度较慢,没有uiautomator的执行速度快(个人感觉)

    此3个自动化测试框架,本人都使用过,不太建议使用HierarchyViewer,可以在uiautomator和appium中随意选择一个进行使用,网上的相关学习资料特别多   (个人建议,当然可以根据自己爱好进行选择)

  • 相关阅读:
    探索事务日志与恢复模式(1-13)
    sql server 复制、镜像常见故障处理
    (3.2)mysqldump之备份单个表及脚本批量备份
    Log Explorer 恢复误删除、更新数据
    ApexSQL Log 从意外UPDATE和DELETE操作中恢复SQL Server数据
    ApexSQL Recover 恢复一个被drop的表的数据
    数据库参数调优--自动更新统计信息
    T-SQL利用笛卡尔积/窗口函数_分析函数/表连接累计、累加
    【生产问题】-dbcc checkdb报错-数据页故障
    (4.4)dbcc checkdb 数据页修复
  • 原文地址:https://www.cnblogs.com/syw20170419/p/7048111.html
Copyright © 2011-2022 走看看