標籤:android 壓力測試 monkey
Monkey是Android中的一個命令列工具,可以運行在模擬器裡或實際裝置中。它向系統發送偽隨機的使用者事件流(如按鍵輸入、觸控螢幕輸入、手勢輸入等),實現對正在開發的應用程式進行壓力測試。Monkey測試是一種為了測試軟體的穩定性、健壯性的快速有效方法。
1,環境檢查
先檢查電腦adb有沒有,在運行--cmd--adb--斷行符號
或者輸入adb shell
檢查adb是否配置好。
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M01/89/89/wKioL1gXCibR7VYmAADJF7XhjFo590.jpg-wh_500x0-wm_3-wmp_4-s_68494534.jpg" title="a.jpg" alt="wKioL1gXCibR7VYmAADJF7XhjFo590.jpg-wh_50" />
2,手機用USB串連電腦
運行--cmd斷行符號,輸入adb devices
650) this.width=650;" src="http://s2.51cto.com/wyfs02/M02/89/89/wKioL1gXCjmwwIOsAAAnqpPwCvY872.jpg-wh_500x0-wm_3-wmp_4-s_3654650682.jpg" title="b.jpg" alt="wKioL1gXCjmwwIOsAAAnqpPwCvY872.jpg-wh_50" />
3,檢查有沒有擷取到手機root許可權
650) this.width=650;" src="http://s1.51cto.com/wyfs02/M02/89/89/wKioL1gXCkSDUD4rAAAna2rftNE607.jpg-wh_500x0-wm_3-wmp_4-s_28005139.jpg" title="c.jpg" alt="wKioL1gXCkSDUD4rAAAna2rftNE607.jpg-wh_50" />
運行--cmd斷行符號,輸入adb shell斷行符號
如果出現$,就是沒有擷取到ROOT許可權。
如果出現#,就是擷取到ROOT許可權。
沒有擷取到root許可權,則需要解決這個問題,一般輸入su可以切換到ROOT 許可權,如果su不能切換,則需要在手機上安卓軟體來擷取手機的ROOT許可權。
4,擷取到root許可權後,輸入
cd /data/data
找到你的app包名
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/89/8B/wKiom1gXClqjPAaNAAEtomGCEZU713.jpg-wh_500x0-wm_3-wmp_4-s_197458452.jpg" title="d.jpg" alt="wKiom1gXClqjPAaNAAEtomGCEZU713.jpg-wh_50" />
5,然後可以輸入:
monkey –p com.datou.hibrowser –v 100, - ----自己apk的包名
也可以退出sehll,
在命令列直接輸入adb shell monkey –p com.datou.hibrowser –v 100,運行過程中,模擬器中的應用程式在不斷的切換畫面。
下面這句命令的意思是:啟動指定的應用程式,並向其發送500個偽隨機事件: #monkey -p com.datou.hibrowser -v 500 其中-p表示對象包 –v 表示事件數目量
運行展示:
650) this.width=650;" src="http://s1.51cto.com/wyfs02/M01/89/89/wKioL1gXCsSAdddNAAK-wO1oCG0064.jpg-wh_500x0-wm_3-wmp_4-s_1456854000.jpg" title="e.jpg" alt="wKioL1gXCsSAdddNAAK-wO1oCG0064.jpg-wh_50" />
6,其他參數:
Monkey Test執行過程中在下列三種情況下會自動停止:
A.如果限定了Monkey運行在一個或幾個特定的包上,那麼它會監測試圖轉到其它包的操
作,並對其進行阻止。
B.如果應用程式崩潰或接收到任何失控異常,Monkey將停止並報錯。
C.如果應用程式產生了應用程式不響應(application not responding)的錯誤,Monkey
將會停止並報錯。
通過多次並且不同設定下的Monkey測試才算它是一個穩定性足夠的程式。
本文出自 “ghost” 部落格,請務必保留此出處http://fangwei009.blog.51cto.com/5234706/1867762
Monkey測試執行個體