ps:對app壓力測試所做的一個回憶筆記。
壓力測試的意義:提升app穩定性,保證使用率,保留用戶,提高效益。
介入時間:功能測試通過後
monkey:存在於手機系統中,僞隨機事件
準備環境:android sdk (下載地址:http://www.android-studio.org/)、python(https://www.python.org/downloads/)並配置好環境變量
命令執行adb shell monkey -p package
adb devices---adb install packagea.apk(安裝所測的包)---adb shell monkey 1000---adb logcat |grep START,然後將操作一下所做的app,最後的那條就含有包名(cmp=包名/)
如:adb shell monkey -p 包名 -s 100 --pct-touch 50 --pct-motion 30 --ignore-crashes --ignore-timeouts -v 10000
常用參數:
throttle:延遲 adb shell monkey -p 包名 --throttle
s:種子數(建議執行monkey時加上種子數,測試一晚上,在開發改bug後可使用相同種子數保證相同操作進行bug的驗證)adb shell monkey -p 包名 -s 種子數 事件數
--pct-touch:觸摸點擊事件
--pct-motion:動作事件
--pct-trackball:軌跡球事件
--ignore-crashes:
--ignore-timeouts:
崩潰例子:簡單計算器app進行壓力測試
adb shell monkey -p com.sky.jisuanji -v 1000>e:error.log
發生崩潰後,將崩潰結果發給開發即可。
待開發修復完bug後,加上相同的種子數進行驗證即可。
無響應例子:
測試app在手動測試過程中發生了無響應,其無相應日誌已經自動被記錄到手機裏了。位置data/anr 的traces.txt文件就是,發給開發即可。
測試app在monkey測試中發生無響應,直接將日誌發給開發即可。
monkey腳本 adb shell monkey -f 腳本 執行次數