MonkeyRunner執行Python腳本實例——發送短信


  上一文中我們已經對MonkeyRunner啟動一個應用程序有了初步的了解,本文將舉例來加深對MonkeyRunner執行Python腳本的理解。

  目標:對手機短信程序進行壓力測試。

  代碼如下: 

 1 #導入我們需要用到的包和類並且起別名
 2 import sys
 3 from com.android.monkeyrunner import MonkeyRunner as mr
 4 from com.android.monkeyrunner import MonkeyDevice as md
 5 from com.android.monkeyrunner import MonkeyImage as mi
 6 #connect device 連接設備
 7 #第一個參數為等待連接設備時間
 8 #第二個參數為具體連接的設備ID
 9 device = mr.waitForConnection(1.0,‘device_id’)
10 if not device:
11     print >> sys.stderr,"fail"
12     sys.exit(1)
13 #定義要啟動的Activity
14 componentName='com.android.mms/.ui.BootActivity'
15 #啟動特定的Activity
16 device.startActivity(component = componentName)
17 #等待時間,防止操作太快,設備反應不及時
18 mr.sleep(1.0)
19 #do someting 進行我們的操作
20 #新建短信
21 #參數是屏幕上坐標值,最后一個參數是動作
22 device.touch(57,747,'DOWN_AND_UP')
23 mr.sleep(1.0)
24 #輸入收件人號碼
25 device.type('10086')
26 #發送短信條數
27 for i in range(0,10):
28     #輸入短信內容
29     device.touch(187,402,'DOWN_AND_UP')
30     device.type('Hello')
31     mr.sleep(1.0)
32     #發送短信
33     device.touch(432,380,'DOWN_AND_UP')
34     mr.sleep(1.0)
35     device.touch(51,752,'DOWN_AND_UP')
36     mr.sleep(1.0)
37 #takeSnapshot截圖
38 mr.sleep(1.0)
39 result = device.takeSnapshot()
40 #save to file 保存到文件,D盤的根目錄下
41 result.writeToFile('d:\\result2.png','png');

  以上代碼很好理解,關鍵問題是如何解決坐標值。畢竟不同的設備分辨率是不一樣的,下面我們就來看看如何獲取屏幕上的坐標值。

  注意:如果monkeyrunner腳本文件要使用中文,記得格式保存為utf-8.

 

  屏幕坐標值的獲取

  我們通過腳本錄制工具可以很方便的獲取屏幕上的坐標值,下載地址:http://115.com/file/e6r0sln9

  下載解壓好后,我們在Cmd中運行“monkeyrunner monkey_playback.py”(運行時在monkey_recorder.py前加上它所在的路徑),就可以啟動腳本錄制工具了。如下圖所示:

  

  紅色部分就是相應的坐標值了。

  我們也可以保存以上腳本,通過運行“monkeyrunner monkey_playback test.mr”(test.mr為保存的腳本名),對腳本進行回放。

  具體參考:http://www.cnblogs.com/youxilua/archive/2011/11/12/2246576.html

 

  


免責聲明!

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



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