APP性能 | Android Money -- 隨機(jī)測試

Monkey測試原理:Monkey是Android中的一個命令行工具,可以運(yùn)行在模擬器里或?qū)嶋H設(shè)備中。它向系統(tǒng)發(fā)送偽隨機(jī)的用戶事件流(如按鍵輸入、觸摸屏輸入、手勢輸入等),實現(xiàn)對正在開發(fā)的應(yīng)用程序進(jìn)行壓力測試。Monkey測試是一種為了測試軟件的穩(wěn)定性、健壯性的快速有效的方法。

測試重點(diǎn):根據(jù)給定的指令先進(jìn)行全模塊的monkey測試,等測試結(jié)束,查看Stability_base_err.txt,搜索關(guān)鍵詞(crash、anr、fatal等),找出問題所在。再打開Stability_base.txt 2記住此次出問題的seed值,等開發(fā)修復(fù)此問題,再以此seed值跑monkey驗證是否修復(fù)。

參數(shù)解釋:

balcklist/whitelist? 黑名單:不測試的應(yīng)用/白名單:只測試這部分應(yīng)用

pkg-blacklist-file /data/local/tmp/blacklist.txt 參數(shù)-p用于約束限制,用此參數(shù)指定一個或多個包(Package,即App)。指定包之后,Monkey將只允許系統(tǒng)啟動指定的APP。如果不指定包,Monkey將允許系統(tǒng)啟動設(shè)備中的所有APP

'--throttle 1000 用于指定用戶操作(即事件)間的時延,單位是毫秒,1000ms

'--ignore-crashes 用于指定當(dāng)應(yīng)用程序崩潰時(Force & Close錯誤),Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序崩潰,Monkey依然會發(fā)送事件,直到事件計數(shù)完成。

'--ignore-timeouts 用于指定當(dāng)應(yīng)用程序發(fā)生ANR(Application No Responding)錯誤時,Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序發(fā)生ANR錯誤,Monkey依然會發(fā)送事件,直到事件計數(shù)完成。

'--ignore-security-exceptions ?用于指定當(dāng)應(yīng)用程序發(fā)生許可錯誤時(如證書許可,網(wǎng)絡(luò)許可等),Monkey是否停止運(yùn)行。如果使用此參數(shù),即使應(yīng)用程序發(fā)生許可錯誤,Monkey依然會發(fā)送事件,直到事件計數(shù)完成。

'--ignore-native-crashes 忽略本地代碼導(dǎo)致的崩潰。設(shè)置忽略后,Monkey將執(zhí)行完所有的事件,不會因此停止

'--monitor-native-crashe 用于指定是否監(jiān)視并報告應(yīng)用程序發(fā)生崩潰的本地代碼。

'-v-v-v 用于指定反饋信息級別(信息級別就是日志的詳細(xì)程度),總共分3個級別(3個v為最高日志級別)。

360000 360000為monkey測試點(diǎn)擊次數(shù)

'-s 用于指定偽隨機(jī)數(shù)生成器的seed值,如果seed相同,則兩次Monkey測試所產(chǎn)生的事件序列也相同的。

>> /mnt/sdcard/Stability_base.txt 2>> /mnt/sdcard/Stability_base_err.txt?? 這兩個是兩份不同日志所存放的位置的路徑

MONKEY專項測試

測試前提:

1) 手機(jī)初始化;

2) 連接wifi;

3) 進(jìn)入設(shè)置-亮度和字體,關(guān)閉自動調(diào)節(jié)開關(guān),自動鎖屏選擇不休眠;

4) (版本已默認(rèn)打開,不用再打開)進(jìn)入設(shè)置-輔助功能-開發(fā)人員工具,開啟USB調(diào)試;

5) 開啟log:

a)? 移動端撥號盤輸入:*#*#3646633#*#*,進(jìn)入mtklog項,家庭端在wifi框內(nèi)輸入*#1006#,進(jìn)入原生設(shè)置,進(jìn)入關(guān)于平板電腦,點(diǎn)按5次版本號進(jìn)入開發(fā)者模式,再點(diǎn)3次內(nèi)核版本進(jìn)入mtklog項;

b)點(diǎn)擊右上角按鈕進(jìn)入頁面,只開啟MobileLog,關(guān)閉剩余項;

c)點(diǎn)擊MobileLog進(jìn)入MobileLog 頁面,將Limit current Log Size和Limit Total Log Size分別 設(shè)置為4096MB、8192MB;

d)開啟mtklog;

7)blacklist.txt僅為參考,可以創(chuàng)建whitelist.txt進(jìn)行替代。

測試要求:測試機(jī)10臺,根據(jù)項目要求設(shè)置執(zhí)行的時間

測試內(nèi)容

測試項:全模塊測試

測試步驟:

1).黑名單blacklist.txt拷入手機(jī)? adb push 黑名單路徑 /data/local/tmp/

2)進(jìn)入cmd,打開adb 執(zhí)行adb shell

3)設(shè)置免關(guān)機(jī) setprop ro.monkey true

4)執(zhí)行命令:monkey --pkg-blacklist-file? /data/local/tmp/blacklist.txt? --throttle 1000 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes? -v -v -v 360000 1 >> /mnt/sdcard/Stability_base.txt 2>> /mnt/sdcard/Stability_base_err.txt

5)標(biāo)配充電器充電

預(yù)期結(jié)果:

1.手機(jī)是否有出現(xiàn)死機(jī)、異常關(guān)機(jī)(排除無電自動關(guān)機(jī))、異常重啟

2.查看Stability_base_err.txt,搜索關(guān)鍵詞(crash、anr、fatal等,并確認(rèn)問題非第三方包問題),若無,則驗證通過。若有,則截取出問題下日志和相關(guān)log附在bug上。再查看Stability_base.txt,記下seed值,等下次驗證問題的時候使用。

測試項:單個模塊測試

測試步驟:

1)進(jìn)入cmd,打開adb 執(zhí)行adb shell

2)設(shè)置免關(guān)機(jī) setprop ro.monkey true

3)執(zhí)行命令:monkey --p -單個包名 --throttle 1000 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes? -v -v -v 360000 1 >> /mnt/sdcard/Stability_base.txt 2>> /mnt/sdcard/Stability_base_err.txt

5)標(biāo)配充電器充電

預(yù)期結(jié)果:

1.手機(jī)是否有出現(xiàn)死機(jī)、異常關(guān)機(jī)(排除無電自動關(guān)機(jī))、異常重啟

2.查看Stability_base_err.txt,搜索關(guān)鍵詞(crash、anr、fatal等,并確認(rèn)問題非第三方包問題),若無,則驗證通過。若有,則截取出問題下日志和相關(guān)log附在bug上。再查看Stability_base.txt,記下seed值,等下次驗證問題的時候使用。

測試項:驗證問題測試

測試步驟:

1).黑名單blacklist.txt拷入手機(jī)

adb push? 黑名單路徑? /data/local/tmp/

2)進(jìn)入cmd,打開adb 執(zhí)行adb shell

3)設(shè)置免關(guān)機(jī) setprop ro.monkey true

4)執(zhí)行命令:monkey --pkg-blacklist-file? /data/local/tmp/blacklist.txt? --throttle 1000 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -s 上次出現(xiàn)問題的seed值 -v -v -v 360000 1 >> /mnt/sdcard/Stability_base.txt 2>> /mnt/sdcard/Stability_base_err.txt

5)標(biāo)配充電器充電

預(yù)期結(jié)果:

1.手機(jī)是否有出現(xiàn)死機(jī)、異常關(guān)機(jī)(排除無電自動關(guān)機(jī))、異常重啟

2.查看Stability_base_err.txt,搜索關(guān)鍵詞(crash、anr、fatal等,并確認(rèn)問題非第三方包問題),若無,則驗證通過。若有,則截取出問題下日志和相關(guān)log附在bug上。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Monkey啟動的命令行腳本為:monkey [options] < count > Options可以分為5類...
    __HAPPINESS_yh閱讀 814評論 0 0
  • monkey 介紹 Monkey是Google提供的一個用于穩(wěn)定性與壓力測試的命令行工具??梢赃\(yùn)行在模擬器或者實際...
    望月成三人閱讀 14,773評論 2 12
  • 一、隨機(jī)穩(wěn)定性測試 模擬用戶長時間的隨機(jī)操作,檢查被測應(yīng)用的穩(wěn)定性(測試期間是否出現(xiàn)crash或ANR)。測試腳本...
    vvvillian閱讀 1,186評論 0 1
  • Monkey的測試策略 一. 分類 Monkey測試針對不同的對象和不同的目的采用不同的測試方案,首先測試的對象、...
    宇文臭臭閱讀 611評論 0 7
  • 1.什么是Monkey測試? Android的Monkey是一個命令行工具,可以在模擬器或?qū)嶋H的設(shè)備上運(yùn)行。它發(fā)送...
    Root_123閱讀 2,255評論 0 0

友情鏈接更多精彩內(nèi)容