安卓自動化測試monkey

monkey–穩定性測試

因爲實體機要root權限,所以我用模擬器來測試

操作步驟

  1. 先打開模擬器(之前的文章有介紹)
  2. 先安裝被測軟件到模擬器(adb install -r 安裝包)
  3. 查看包名(adb shell 進入shell界面 --> ls data/data 查看應用程序包)
  4. 輸入命令
  • monkey -p 程序包名 -v 1000 (shell界面命令)
    如:monkey -p com.android.calculator -v 1000 (-p是指定包,-v是日誌級別,1000是指注入多少次事件)
    -v:可以有1–3個,越多打印的信息越詳細
  • adb shell monkey -p com.android.calculator -s 10 -v 1000 (window命令)
    -s 指定seed值 -v 反饋信息級別 -p 指定包
  • adb shell monkey -p com.android.calculator -s 10 -v 1000 > C:\monkey\test1.txt 保存日誌

常用的命令

  • 指定包測試
    adb shell monkey -p 包名 --throttle 500 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -vvv 10000 > C:\monkey\test1.txt
  • 指定activity執行
  • 啓動APP
    adb shell am start com.android.calendar
  • 查看包有哪些activity
    adb shell dumpsys package 包名 >C:\monkey\test1.txt
    如:adb shell dumpsys package com.android.calendar >C:\monkey\test21.txt
    在這裏插入圖片描述
  • 啓動activity
    adb shell am start 包名/Activity名
    在這裏插入圖片描述
  • 指定activity執行
    adb shell monkey -p 包名/Activity名 --throttle 500 -s 100 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -vvv 10000 > C:\monkey\test221.txt

常用命令參數

  1. -p 可以指定一個/多個包(如:adb shell monkey -p 包名1 -p 包名2 100)
  2. –throttle 設置隨機事件之間的延,單位爲毫秒(如:adb shell monkey -p 包名 --throttle 3000 100)
  3. -s 指定僞隨機數生成器的seed數,如果seed值相同,則測試的隨機事件序列相同(重現問題用這個)
  4. –pct-touch --觸屏事件佔比 (如:adb shell monkey --pct-touch 50 -p 包名 100 隨機事件中觸屏佔比50%)
  5. –pct-motion --滑動事件佔比
  6. –pct-trackball --隨機移動和單擊事件佔比
  7. –pct-nav --向上、向下、向左、向右事件佔比
  8. –pct-majornav --主要導航事件佔比 (如:Back鍵、Menu鍵)
  9. –pct-syskeys --設備系統按鍵佔比
  10. –pct-appswitch --啓動活動(activity)佔比,控制測試涉及到多少的活動
  11. –pct-anyevent --普通按鍵消息、不常用的按鈕消息佔比
  12. –ignore-crashes --不管應用是否奔潰
  13. –ignore-timeouts --測試過程出現ANR(Application not responding),也不管
  14. –ignore-security-exceptions —不管證書/網絡許可錯誤
  15. –kill-process-after-error --出錯停止
  16. –monitor-native-crashes --報告安卓的奔潰事件

不記得摘自哪裏的了,放在這裏學習學習
Monkey:Android SDK自帶的一個命令行工具,使用adb來運行它,向系統發送僞隨機的用戶事件流,如按鍵、觸屏、輸入等;實現對正在開發的應用程序進行壓力測試,伴隨着日誌輸出。實際上該工具只能做程序做一些壓力測試,由於測試事件和數據都是隨機的,不能自定義,所以有很大的侷限性。

MonkeyRunner:Android SDK提供的測試工具,位於tools目錄下,比Monkey強大,可以編寫腳本來自定義數據,事件;但是腳本是採用python語言編寫的,其實就是對python進行了封裝,對測試人員要求較高。

Appium:這應該是最近很火的一個測試框架,支持Native APP,Hybird APP,Web APP;可以跨平臺在Windows,Mac,Linux使用,支持Android,ios;支持java,js,php,Python等語言編寫測試腳本

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章