比appium更简单的app测试工具

比appium更简单的app测试工具!

一、场景

在app测试的蛮荒时代,如果要进行app自动化测试非常麻烦。

张大胖如果想做安卓自动化测试,首先必须要学Java。

因为安卓自动化测试都绕不开google自己研发的自动化测试框架,于是张大胖哼哧哼哧开始学java,开始上手UiAutomator做自动化测试。

2周过去了,张大胖开始向王哥抱怨:

比appium更简单的app测试工具

王哥一看他的代码,demo都还没跑起来,再让他玩下去,公司都倒闭了。

于是王哥给张大胖推荐了一个工具叫appium, 这个工具强就强在跨平台,跨语言,还开源。

张大胖之前学过半个月python, 搞这个问题应该不大。

过了一天,张大胖果然兴冲冲的跑过来,高兴的说流程跑通了。

appium这玩意真不错,就是有一个不好的地方,通过代码查找app上的元素经常要嵌套 java 代码,而且要带上一长串的设备信息。

王哥又给张大胖推荐了一个工具,这个工具叫python uiautomator。

它可以在手机上装一个http rpc服务,你可以通过其他语言作为客户端去远程调用uiautomator的接口。

这个库解决了原始uiautomator的2个问题:

◆ 必须要会Java代码

◆ 脚本要传到设备上才能运行

他的原理图类似于这样:

比appium更简单的app测试工具

而相比appium,这个工具封装的api更加简洁,使用起来更加高效。

张大胖马上回去研究了一下,15分钟就把流程跑通了,当天就请王哥搓了顿小龙虾。

有了这么好用的工具,张大胖赶紧回来写笔记。

二、安装

安装不要太简单,一行命令搞定。

相比appium要装的各种依赖,简直不要太幸福。

安装好以后,连接手机,输入adb devices指令,确认手机连接成功,轻松完成。

比appium更简单的app测试工具

三、快速使用

手工怎么测,这个工具的流程完全一样,省心省力,一行多余的代码都没有。

而使用appium的时候,张大胖为了写长长的desired capabilities不知消耗了多少脑细胞。

1, 连接设备;2, 启动app;3, 元素定位;4,元素操作;5,关闭 app。

比appium更简单的app测试工具

相同版本的 appium 代码,对比了解一下:


做一个简单的对比, python版的uiautomator具有如下优势:

◆ 连接手机的时候可以省去大段信息

◆ 元素定位直接采用更加优雅的 __call__() 机制,不需要调函数名称,而是通过关键字参数的形式直接完成元素定位。

◆ 将app作为一个管理单元(session),会有更大的灵活性。

◆ 这里还不包括更加灵活的等待和watcher机制。

四、元素定位

使用weditor工具查看元素定位:

为了更加方便的进行元素定位,可以使用weditor辅助获取元素定位表达式,如果不想用,也可以用uiautomatorviewer等原生安卓辅助工具。

安装weditor, 你懂的pip install weditor。

安装完成后命令行输入weditor一键启动,直接弹出图形化界面。

比appium更简单的app测试工具

weditor的优势在于:

◆ 可以同时管理多个设备;

◆ 直接在调试界面操作手机,不需要另一只手去动手机;

◆ 自动生成uiautotor代码。

五、总结

本篇介绍了非常简单的uiautomator使用,总结一下它的优势:

◆ 不用会 java, 也可以体验原生测试的“快”感;

◆ api封装异常简单,符合python的优雅性格;

◆ 上手迅速,略懂python,就可以玩转。

不聊了,这么好用的工具,我要赶紧回去吃透它。

推荐一个软件测试学习交流群:785128166,群里有分享的视频,面试指导,测试资料,还有思维导图、群里有视频,都是干货的,你可以下载来看。主要分享测试基础、接口测试、性能测试、自动化测试、TestOps架构、Jmeter、LoadRunner、Fiddler、MySql、Linux、简历优化、面试技巧以及大型测试项目实战视频资料。合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

公众号:程序员二黑, 关注后免费领取海量学习资料。

好东西要和朋友一起分享哦
 

 

猜你喜欢

转载自blog.csdn.net/m0_52668874/article/details/114645440