1. 程式人生 > 其它 >如何用monkey做穩定性測試?

如何用monkey做穩定性測試?

技術標籤:app自動化app

monkey用法

1、作用

monkey的作用,是通過一系列的隨機操作,來測試手機上應用的穩定性,其實就是看在高頻率的大量操作下,應用會不會出現問題

2、常用命令
adb shell monkey -p com.ss.android.ugc.aweme -v -v -v --ignore-crashes --ignore-timeouts --ignore-native-crashes --throttle 100 1000000>D:\douyin.log
  • -v 引數,表示日誌的詳細等級, -v -v -v 表示最詳細的級別
  • -s 引數,表示monkey執行時使用的種子序列號,相當於找猴子來測試,猴子有編號,選一個指定編號的猴子,會指定使用哪個seed序列來完成測試操作,通常用於monkey發現問題之後,想要復現的時候,通過指定相同的seed值,來複現同樣的操作
  • –ignore-crashes 忽略應用崩潰
  • –ignore-timeouts 忽略ANR 也就是應用未響應。
  • –ignore-native-crashes 忽略系統崩潰
  • –ignore-security-exceptions 忽略安全許可權異常
  • –throttle 指時間間隔
3、monkey日誌的檢視

如果有異常,檢視monkey日誌的時候,其實重點就是搜尋一下有沒有問題:crash(崩潰)、exception、error、failed、timedWaiting(ANR application not responded 應用無響應)、at(通常是在異常後面會出現at,來說明報錯程式碼的位置。)

anr、crash、異常等會導致monkey中斷執行,而測試的時候往往希望忽略中斷,繼續執行。

4、工作中使用monkey

1、執行次數 一般會非常大,日誌資訊不需要全量檢視,重點搜尋報錯內容就行
2、-p 通常都會加上,用於指定自己測試的包名
3、-s 在復現問題的時候使用。 如果要復現問題,指定相同的seed值和次數,就能用同樣的操作進行測試
4、在執行的時候通過 ignore引數,忽略掉執行過程中導致monkey中斷的問題,繼續執行直到monkey指定次數執行結束
–ignore-crashes 忽略應用崩潰
–ignore-timeouts 忽略ANR 也就是應用未響應
–ignore-native-crashes 忽略系統崩潰

–ignore-security-exceptions 忽略安全許可權異常
這4個,相當於是必填引數,為了讓monkey能夠一直跑下去
5、如果想要指定只執行某些動作 比如點選,就可以通過–pct-touch 100來指定 100%執行點選操作
6、monkey執行的時候,儘量先把應用完成登入之後再測試,因為monkey沒有辦法去完成登入操作的

5、中斷monkey

monkey開始執行之後,執行的是安卓系統上的指令碼,所以中斷monkey執行的方法是:進入adb shell中,ps查詢monkey程序,然後kill殺掉他