【Android 】【Monkey Demons】 針對性的進行穩定性測試
前言
目前大部分的Monkey測試的方式大都無法對獨立的模塊進行穩定性測試,而每個業務線的入口在測試階段很難通過原生的Monkey測試(隨機性較強)來發現自己模塊內crash的問題,針對這個問題,這個工具設計開發的初衷就是為了能夠縮小測試範圍,在測試階段指定業務模塊內發現和暴露更多的穩定性相關的問題。
工具介紹:
Demons(守護程序)是自主研發的一套獨立於monkey測試之外的 手機內單個應用監聽守護的 jvm程序。
解決的問題:
集成到優酷之後我們需要對App內的單個業務模塊進行穩定性測試。由於原生的Monkey發送的是全局的隨機事件,不支持對某幾個Activity進行定製測試,Demons的出現就為了解決了這個問題。
工具原理:
原理其實就是有一個後台任務可用定時巡檢PC上所連的每個設備當前運行在哪個頁麵,如果發現設備已經crash或者當前頁麵不在我們指定的白名單頁麵,那麼Demons會自動處理當前進程的數據並初始化回到主入口。
工具優勢:
Demons可以在每次越界之後隨機分配回到一個主入口 進行初始化。
Demons與Monkey執行模塊是分離的,這樣可以防止相互影響。
Demons可以運用在原生的Monkey還是其他的修訂過的遍曆工具。
工具結構:
執行流程:
使用效果:
目前試用一個版本 10小時內 保持一直停留在指定頁麵,拋出來的指定模塊的Crash次數占總次數的30%左右,剩餘的crash大部分都是主客相關的crash
上手使用:
下載工具地址:
https://yunpan.taobao.com/s/2kxUUA0xNQK (提取碼:Xqbqoj)
環境準備:
1,本地AndroidSdk環境必須要有
2,至少一台設備必須連接電腦(也可以用無線ADB)
運行方式:
1,將工具下載下來放到本地目錄下
2,配置工作目錄config.xml文件
3,執行monkey命令
4,然在工作目錄下執行 java -jar Demons.jar
FAQ:
查看當前頁麵Activity
adb shell dumpsys activity | findstr "mFocusedActivity"
驗證主入口是否有跳轉權限
adb shell am start -n 包名/Activity名
主入口如果配的有問題會出現以下錯誤,原因是Activity 沒有調用權限
最後更新:2017-04-19 11:30:40