小小糖 发表于 2018-4-23 13:26:26

手机端的自动化测试框架uiautomator

介绍:比sl4a更好用的工具,直接包装uiautomator,调用uiautomator的api在本地直接编写脚本,然后运行测试
case,这样比用java写,然后再打包,runcase要简单的多,关键是他还延伸很多有用的方法,比google原生的
要强大一点。

1.uiautomator需要下载两个包:bunder.jar,uiautomator-stub.jar

然后push到android 设备中(用到add命令),然后启动服务器

看到大神有些批处理文件直接运行,脚本如下:

adb forward tcp:9008 tcp:9008

adb push bundle.jar /data/local/tmp

adb push uiautomator-stub.jar /data/local/tmp

adb shell uiautomator runtestuiautomator-stub.jar bundle.jar -c com.github.uiautomatorstub.Stub
2.然后是搭建python运行uiautomator的环境:

pip install uiautomator

还有一些module下载:uiautomator.py、jsonrpclib包,urllib3包

3.可以开始写case了!

(具体可以参考上述github地址,里面有API调用的详细用法:p)





因为是手机端的测试,跑脚本要用到adb命令,再来了解一下什么是adb

adb就是在终端操作你的服务端——也就是你的android设备的程序,使用之前要先安装android sdk,sdk里面
集成了adb,然后再~/.bash_profile里面指定sdk的路径:

export PATH=${PATH}:<你的sdk目录>/tools

然后再source .bash_profile就可以了

然后 手机连接数据线,在电脑上打开cmd,然后输入命令

adb remount

adb shell

su

执行完成之后,你会看到:

* daemon not running. starting it now *

* daemon started successfully *

接着就是Linux命令行模式了

常见的adb命令:

1. 查看设备

adb devices

这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示

2. 安装软件

adb install

这个命令将指定的apk文件安装到设备上

3. 卸载软件

adb uninstall <软件名>

adb uninstall -k <软件名>

如果加 -k 参数,为卸载软件但是保留配置和缓存文件.

4. 登录设备shell

adb shell

adb shell

这个命令将登录设备的shell.

后面加将是直接运行设备命令, 相当于执行远程命令

5. 从电脑上发送文件到设备

adb push <本地路径> <远程路径>

用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)

6. 从设备上下载文件到电脑

adb pull <远程路径> <本地路径>

用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑

7. 显示帮助信息

adb help

这个命令将显示帮助信息



梦想家 发表于 2018-5-9 10:01:18

:victory:
页: [1]
查看完整版本: 手机端的自动化测试框架uiautomator