自动化测试框架对比(UIAutomator、Appium)

UiAutomatorAppium之间的区别和联系

联系:

Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调UiAutomator的命令,实现App的自动化测试。

UiAutomator测试框架是AndroidSDK自带的App UI自动化测试Java库。

1UiAutomator——基于UIAutomation的用户界面自动化测试框架,可以跨应用工作;

2UiAutomator只能测试Android native app

3、主要功能跟Appium类似

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

5、可以跨进程操作;

6运行速度快;

7UiAutomator框架对外提供的API,主要有UiDeviceUiSelectorUiObjectUiCollectionUiScrollable

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

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

Appium——跨平台允许采用同一套API在不同的平台(IOSAndroid)上编写测试代码

Appium其实是找了一个中间件BootstrapBootstrap是一个Uiautomator的测试脚本,UiAutomator可以正常运行它,它也可以正常的使用UiAutomator的方法,这个就是Appium的命令可以转换成UiAutomator命令的关键。

Appium可以跨平台跨语言将脚本通过Appiumserver发送给Bootstrap,然后再运行,所以,相当于Appium封装了UiAutomator,功能更强大。

1Appium是基于UIAutomator框架实现的一个开源、跨平台的测试框架。支持跨平台它允许测试人员在不同的平台iOSAndroid使用同一套API来写自动化测试脚本,可以增加iOSAndroid测试套件间代码的复用性。支持多语言如:javapython

2Appium测试相当于黑盒测试,测试UI逻辑正确性获取一个AppiumDriver对象。该对象只是有很多findElements()的方法,获取到UI元素。UI元素是WebElement,这个类提供的方法基本是获取信息为主,比如获取nameclasslocationtextisSlectedisTouched等信息。这个测试框架,只是测试UI逻辑的正确性;

3、在运行脚本上执行速度较慢,没有uiautomator的执行速度快

4appium使用的是Client/Server的设计模式,实现跨平台,多语言。只要client能够发送http请求给server,那么的话client用什么语言来实现都是可以的,通过Pythonpython-client )编写了一个appium自动化脚本并执行,appium-Server通过解析,驱动iOS设备来执行appium自动化脚本。或者,我在Windows平台上,通过Java java-client )编写了一个appium自动化脚本并执行,请求会首先到 appiumForWindow.zipWindow下的appium-Server),appium-Server通过解析,驱动Android虚拟机或真机来执行appium脚本。所以,你会看到appium的强大之处就在于此。

 



  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值