MonkeyRunner之MonkeyRecorder錄制回放腳本(親測可正常運行)


MonkeyRunner可以錄制和回放腳本

前置條件:

電腦連接手機,輸入adb devices 看看返回是否手機設備列表(我是真機,模擬器也可以)

配置好安卓sdk和Python環境

step:

1、啟動錄制腳本:cmd,輸入命令

monkeyrunner  monkey_recorder.py

會彈出一個MonkeyRecord窗口界面該窗口的功能:

注意:如果錄制時候,點擊,發現設備和窗口不同步,ctrl+c,輸入y,再次輸入錄制命令(黑屏不好使)

  • 1、可以自動顯示手機當前的界面
  • 2、自動刷新手機的最新狀態
  • 3、點擊手機界面即可對手機進行操作,同時會反應到真機,而且會在右側插入操作腳本
  • 4:、wait: 用來插入下一次操作的時間間隔,點擊后即可設置時間,單位是秒

Press a Button:用來確定需要點擊的按鈕,包括menu、home、search,以及對按鈕的press、down、up屬性

Type Something:用來輸入內容到輸入框

Fling:用來進行拖動操作,可以向上、下、左、右,以及操作的范圍

Export Actions:用來導出腳本,不需要后綴名,也可以添加后綴名.mr

Refresh Display:用來刷新手機界面,估計只有在斷開手機后,重新連接時才會用到

 以學院的app為例,生成的腳本后綴為mr

生成的monkey腳本如下:

demo.mr

WAIT|{'seconds':2.0,}
TOUCH|{'x':924,'y':724,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':756,'y':1704,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':337,'y':288,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':263,'y':640,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':519,'y':660,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':519,'y':660,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':519,'y':660,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':985,'y':1536,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TYPE|{'message':'wangqiang_cyou',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':421,'y':820,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TYPE|{'message':'13704042785',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':999,'y':1028,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':789,'y':1188,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':108,'y':1744,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
DRAG|{'start':(432,1420),'end':(432,284),'duration':1.0,'steps':10,}
WAIT|{'seconds':2.0,}
DRAG|{'start':(432,1420),'end':(432,284),'duration':1.0,'steps':10,}
WAIT|{'seconds':2.0,}
DRAG|{'start':(432,284),'end':(432,1420),'duration':1.0,'steps':10,}
WAIT|{'seconds':2.0,}
TOUCH|{'x':756,'y':1684,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':563,'y':1480,'type':'downAndUp',}
WAIT|{'seconds':2.0,}
TOUCH|{'x':597,'y':1708,'type':'downAndUp',}
WAIT|{'seconds':2.0,}

生成的腳本建議放在sdk的tool目錄下:

2、回放腳本,cmd輸入命令:

monkeyrunner  monkey_playback.py demo.mr

如果遇到不能回放的問題,需要關閉當前錄制時的cmd窗口,重新打開cmd窗口執行回放操作,或者ctrl+c,重新輸入命令即可(黑屏好像不好使,我自己試驗的)

備注:以上路徑都是絕對路徑,錄制后的腳本可以進行二次更改,而且每一步操作需要有時間間隔,這樣才能保證測試的正確性。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM