前提:環境已部署, 使用數據線連接上真機
一、使用cmd窗口單步執行monkeyrunner命令
打開cmd窗口,輸入monkeyrunner (前提設置好環境變量);然后按照monkeyrunner常用命令一步一步執行即可
二、使用CMD窗口執行python文件
打開cmd窗口,輸入monkeyrunner d:\mk\install.py 對python腳本文件執行
install.py文件內容如下:
1 from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage 2 device=MonkeyRunner.waitForConnection() 3 MonkeyRunner.sleep(3) 4 device.removePackage('com.xxx.phone') 5 MonkeyRunner.sleep(2) 6 device.installPackage('d:\mk\xxxphone.apk') 7 MonkeyRunner.sleep(2) 8 9 device.wake() 10 device.touch(800,1900,'DOWN_AND_UP') 11 MonkeyRunner.sleep(2) 12 device.startActivity(component="com.xxx.phone/com.xxx.phone.activity.WelcomeActivity") 13 MonkeyRunner.sleep(5) 14 device.wake() 15 device.drag((800,600),(400,600),0.1,10) 16 device.wake() 17 MonkeyRunner.sleep(2) 18 device.drag((800,600),(300,600),0.1,10) 19 MonkeyRunner.sleep(2) 20 device.touch(530,1600,'DOWN_AND_UP') 21 MonkeyRunner.sleep(3) 22 device.touch(331,545,'DOWN_AND_UP') 23 device.touch(331,1850,'DOWN_AND_UP') 24 print "install success!!"
三、MonkeyRunner 常用命令
//導入三模塊
from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice,MonkeyImage
//連接設備,創建device對象,代表連接的手機,有兩種連接方式:
device=MonkeyRunner.waitForConnection() //默認連接
device=MonkeyRunner.waitForConnection(1.0,’emulator-5554’) //參數連接
參數1:超時時間,單位秒。默認是無限期等待。
參數2:設備名稱,默認為當前設備(手機優先,其次為模擬器)
//安裝APK,成功則返回true
device.installPackage(‘d:\xxx.apk’)
//卸載APK,成功返回true
device.removePackage(‘xxx.apk’)
//啟動APP
device.startActivity(component=”com.yjy.phone/com.yjy.phone,activity.WelcomeActivity”)
//拖拽
device.drag((x1,y1),(x2,y2),01,10)
參數:開始坐標,結束坐標,持續時間,步驟
//觸摸 (x,y為坐標,單位像素)
device.touch(x,y,’DOWN_AND_UP’)
事件類型:(用於touch和press)
1、DOWN發送一個DOWN事件。指定DOWN事件類型發送到設備,對應的按一個鍵或觸摸屏幕上。
2、UP發送一個UP事件。指定UP事件類型發送到設備,對應釋放一個鍵或從屏幕上抬起。
3、DOWN_AND_UP發送一個DOWN事件,然后一個UP事件。對應於輸入鍵或點擊屏幕。
//按鍵
device.press(‘KEYCODE_HOME’,’DOWN_AND_UP’)
參數1:
home鍵 |
KEYCODE_HOME |
back鍵 |
KEYCODE_BACK |
send鍵 |
KEYCODE_CALL |
end鍵 |
KEYCODE_ENDCALL |
上導航鍵 |
KEYCODE_DPAD_UP |
ok鍵 |
KEYCODE_DPAD_CENTER |
下導航鍵 |
KEYCODE_DPAD_DOWN |
power鍵 |
KEYCODE_POWER |
左導航 |
KEYCODE_DPAD_LEFT |
camera鍵 |
KEYCODE_CAMERA |
右導航 |
KEYCODE_DPAD_RIGHT |
上音量鍵 |
KEYCODE_VOLUME_UP |
menu鍵 |
KEYCODE_MENU |
下音量鍵 |
KEYCODE_VOLUME_DOWN |
//喚醒設備
device.wake()
//輸入字符串
device.type(‘abc’)
//截屏保存
result=device.takeSnapshot()
result.writeToFile(‘d:/result1.png','png') //保存電腦本地
//執行一個adb shell命令,並返回結果,如果有的話
device.shell("adb monkey --help")
//重啟設備
device.reboot()
//延時
MonkeyRunner.sleep(5)
//打印
print”abc”
//monkeyrunner的退出:
ctrl+d