monkeyrunner
主要有三个类:MonkeyRunner、MonkeyDevice、MonkeyImage.
可以直接使用一个代码文件运行monkeyrunner,抑或在交互式对话中输入monkeyrunner语句。不论使用哪种方式,你都需要调用SDK目录的tools子目录下的Monkeyrunner命令。如果提供一个文件名作为运行参数,则monkeyrunner将视文件内容为Python程序,并加以运行;否则,它将提供一个交互对话环境。
交互式命令窗口CMD:
进入Monkeyrunner:输入monkeyrunner
Jython 2.5.3 (2.5:c56500f08d34+, Aug 13 2012, 14:54:35)
[java HotSpot(TM) 64-Bit Server VM (oracle Corporation)] onjava1.8.0_31
退出Monkeyrunner:Ctrl+d
Monkeyrunner连接手机
通过 adb devices得到连接的设备名称,应该会显示模拟器名称跟手机名称
List of devices attached
860BDMK22EAT device
手机名:860BDMK22EAT
命令:
from com.Android.monkeyrunner importMonkeyRunner,MonkeyDevice #com.android.monkeyrunner(小写)表示调用android SDK中的monkeyrunner.BAT
device=MonkeyRunner.waitForConnection(5,'手机名') #手机名为'860BDMK22EAT'
如果页面上没有错误信息返回,表示成功连接设备
APP安装
device.installPackage('C:\Users\Desktop\XX.apk')
APP启动
device.startActivity(component="package名/.activity")
使用aapt命令获取包名和活动名:
aapt dump badging F:\QQyinle_439.apk > F:\log.txt
【注】:aapt.exe存在SDK的build-tools文件夹下,需要先切换到相应的文件目录,如:cd D:\SDK\build-tools\24.0.2
MonkeyRunner运行Python脚本
#!/usr/bin/envpython
#_*_ coding:utf-8 _*_
fromcom.android.monkeyrunner import MonkeyRunner,MonkeyDevice
device=MonkeyRunner.waitforConnection(5,'860BDMK22EAT')#连接手机设备
device.installPackage(r'C:\Users\Desktop\XX.apk')
device.startActivity(component="com.qihoo.dr/.ActivityWelcome")#启动程序
在CMD中直接输入:monkeyrunner E:\LearnPython\learnMonkeyRunner.py运行即可(注意脚本的路径)
相关阅读
史上最全的MonkeyRunner自动化测试从入门到精通(10)
三、MonkeyRunner复杂的功能开始学习 (1)获取APK文件中ID的两种方式 Monkeyrunner的环境已经搭建完成,现在对Monkeyrunner做一个简介
三、MonkeyRunner复杂的功能开始学习 (1)获取APK文件中ID的两种方式 Monkeyrunner的环境已经搭建完成,现在对Monkeyrunner做一个简
from com.android.monkeyrunner import MonkeyRunner as mr from com.android.monkeyrunner import MonkeyDevice as md from com