monkey日誌分析
阿新 • • 發佈:2021-12-11
日誌開頭:
顯示本次測試seed值,執行次數,測試包
C:\Users\86183>adb shell monkey -p com.ss.android.article.news --ignore-timeouts --ignore-native-crashes -v 200 :Monkey: seed=1639350920122 count=200 :AllowPackage: com.ss.android.article.news :IncludeCategory: android.intent.category.LAUNCHER :IncludeCategory: android.intent.category.MONKEY
日誌結尾:
如果Monkey測試順利執行完成,在log的最後,會打印出當前執行事件的次數和所花費的時間;Monkey finished代表執行完成。
如果Monkey執行中斷,在log的最後也能檢視到當前已執行的次數。
** Monkey aborted due to error. Events injected: 1647 :Sending rotation degree=0, persist=false :Dropped: keys=1 pointers=0 trackballs=0 flips=0 rotations=0 ## Network stats: elapsed time=42736ms (0ms mobile, 0ms wifi, 42736ms not connected)** System appears to have crashed at event 1647 of 2000 using seed 1639427918325
日誌內容分析:
一般測試結果分析-搜尋關鍵字:
1)搜尋報告中的關鍵字“ANR”,看有無應用無響應的事件(Application Not Responding)
2)搜尋報告中的關鍵字“crash”,看有無崩潰的事件
3)搜尋報告中的關鍵字“exception”,看有無其他異常事件。(如果出現空指標, NullPointerException,需格外重視)
4)記憶體洩露問題搜尋"GC"(需進一步分析)
詳細分析monkey日誌:
Switch--檢視log中的Switch,主要是檢視Monkey執行的是那一個Activity,兩個swtich之間如果出現了崩潰或其他異常,可以在該Activity中查詢問題的所在。
Sleeping--Sleeping for 500 milliseconds這是執行Monkey測試時,throttle設定的間隔時間,每出現一次,就代表一個事件。
重現問題:
Monkey測試出現錯誤後,一般的查錯步驟為以下幾步:
1.找到是monkey裡面的哪個地方出錯
2.檢視Monkey裡面出錯前的一些事件動作,並手動執行該動作
3.若以上步驟還不能找出,可以使用之前執行的monkey命令再執行一遍,注意seed值要一樣
一般 0 ANR 0 CRASH是測試標準。
以上內容 摘錄於:https://blog.csdn.net/qq_15158911/article/details/53444821?utm_source=copy