自动化测试框架 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中随意选择一个进行使用,网上的相关学习资料特别多 (个人建议,当然可以根据自己爱好进行选择)
自动化测试框架 hierarchyViewer、Uiautomator、Appium的区别比较!的更多相关文章
- python 自动化测试框架unittest与pytest的区别
前言: 有使用过unittest单元测试框架,再使用pytest单元测试框架,就可以明显感觉到pytest比unittest真的简洁.方便很多. unittest与pytest的区别: 主要从用例编写 ...
- 自动化测试框架TestNG
测试框架有很多,比如常用的 UI自动化测试框架 ①.java+selenium/appium+testNG/Junit+Maven/Ant/Gradle+Jenkins+MySQL+testlink/ ...
- 自动化测试框架对比(UIAutomator、Appium)
在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调⽤用UiAutomator的命令,实现App的自动化测试. UiAutomator测试框架是And ...
- MAC中在eclipse luna上搭建移动平台自动化测试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录
这几天因为原来在用的hp laptop的电池坏掉了,机器一不小心就断电,所以只能花时间在自己的macbook pro上重新搭建整套环境,大家都知道搭建环境是个很琐碎需要耐心的事情,特别是当你搭建的安卓 ...
- Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...
- 『与善仁』Appium基础 — 8、Appium自动化测试框架介绍
目录 1.主流的移动端自动化测试框架 (1)Robotium (2)Macaca (3)Appium 2.自动化测试工具的选择 3.Appium简介 提示:我们前面说的Android环境搭建和adb命 ...
- Windows下部署Appium教程(Android App自动化测试框架搭建)
摘要: 1,appium是开源的移动端自动化测试框架: 2,appium可以测试原生的.混合的.以及移动端的web项目: 3,appium可以测试ios.android.firefox os: 4,a ...
- UiAutomator自动化测试框架介绍
UiAutomator自动化测试框架介绍 环境搭建 1 必要条件 1.1 JDK 1.2 SDK(API高于15) 1.3 Eclipse 2 ...
- Appium基于Python unittest自动化测试 & 自动化测试框架 -- PO并生成html测试报告
基于python单元测试框架unittest完成appium自动化测试,生成基于html可视化测试报告 代码示例: #利用unittest并生成测试报告 class Appium_test(unitt ...
随机推荐
- 解决记录:win10 无法安装VS2017,visual studio installer下载进度始终为0
问题描述:win10 下无法安装VS2017,visual studio installer下载进度始终为0,点击取消按钮后,也没有反应,visual studio installer也关闭不掉: 具 ...
- Ubuntu14.04部署pyspider的过程
1.安装,安装官方文档,应该先执行 sudo apt-get install python python-dev python-distribute python-pip libcurl4-opens ...
- andorid下从相册选取/拍照选取一张相片并剪切
http://www.2cto.com/kf/201401/270144.html 在Android编程中,从相册选取或是拍照选取一张照片然后对其进行剪切的需求非常的多 之前的一篇文章只说到如何从相册 ...
- vfd with stm8
2018-01-14 22:50:26 之前写了pt6311的驱动,要做时钟考虑使用stm8做主控,于是乎将之前的驱动移植到stm8上. 顺带熟悉了stm8的操作2333. 上源码: #ifndef ...
- error LNK2001: 无法解析的外部符号 "public: char * __thiscall
error LNK2001: 无法解析的外部符号 "public: char * __thiscall CamPinPadCtrl::KeysConvert(unsigned long,ch ...
- vue项目中解决type=”file“ change事件只执行一次的问题
问题描述 在最近的项目开发中遇到了这样的一个问题,当我上传了一个文件时,我将获取到的文件名清空后,却无法再次上传相同的文件 <template> <div class="h ...
- Diffie-Hellman密钥协商算法
一.概述 Diffie-Hellman密钥协商算法主要解决秘钥配送问题,本身并非用来加密用的:该算法其背后有对应数学理论做支撑,简单来讲就是构造一个复杂的计算难题,使得对该问题的求解在现实的时间内无法 ...
- PAT1056:Mice and Rice
1056. Mice and Rice (25) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Mice an ...
- PAT1040:Longest Symmetric String
1040. Longest Symmetric String (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, ...
- js判断浏览器是否支持flash的方法
传统浏览器可以使用window.ActiveXObject检查浏览器是否启用相关的控件.检查浏览器是否启用flash控件,需要先检查浏览器是否支持ActiveXObject,可以使用typeof检查w ...