android adb shell and monkey 學習記錄
Monkey環境:
android SDK and JDK
SDK目錄下的platform-tools和tools目錄要配置環境變量
查看版本:
ADB 的安裝這裏就不多說了,輸入以下命令有如下提示就證明你環境ok,否則自行網上搜索解決下。
> adb version
查看連接設備:
輸入以下命令可以查詢已連接的設備與模擬器:
> adb devices
查看appPackage 和 appActivity:
設備運行程序
> adb logcat > \path\log.txt
log.txt中搜索關鍵字start proc ,關鍵字後邊可以看到啟動的進程appPackage 和 appActivity
安裝一個apk,執行以下命令:
> adb install <packagename> #文件名過長、文件名有中文都有可能導致安裝失敗。
覆蓋安裝:
> adb install -r /path/demo.apk
直接卸載:
> adb uninstall <packagename>
卸載 app 但保留數據和緩存文件:
> adb uninstall -k <packagename>
Monkey事件類型:
-s <seed> #偽隨機數生成器的種子值
--throttle <毫秒數> #在事件之間插入固定延遲
--pct-touch <百分比> #調整觸摸事件的百分比
--pct-motion <百分比> #調整動作事件的百分比
--pct-pinchzoom <百分比> #調整二指縮放事件的百分比
--pct-trackball <百分比> #調整軌跡事件的百分比
--pct-rotation <百分比> #調整屏幕旋轉事件的百分比
--pct-nav <百分比> #調整‘基本’導航事件的百分比
--pct-majornav <百分比> #調整‘主要’導航事件的百分比
--pct-syskeys <百分比> #調整‘系統’按鍵事件的百分比
--pct-appswith <百分比> #調整啟動Activity的百分比
--pct-flip <百分比> #調整鍵盤事件的百分比
--pct-anyevent <百分比> #調整其他類型時間的百分比
Monkey約束限制類參數:
-p <包名> #指定一個包或多個包,每個-p只能用於一個包
-c <類別名> #指定一個或幾個類別,每個-c只能用於一個類別
命令:
PC啟動:
> adb shell monkey [options] <count>
Shell端啟動:
> adb shell
> monkey [options] <count>
兩者區別是,PC端啟動運行日誌可以保存到PC上,Shell端啟動運行日誌保存到手機裏。
殺手機Monkey進程:
> adb shell ps |grep monkey #獲取packagename的進程ID
> adb shell kill pid
啟動/停止 Server
一般來說,下面兩個命令基本不會用到,因為只要設備連接正確,會自動啟動 adb server 的,不過大家也需要知道這倆命令:
啟動 adb server :
> adb start-server
停止 adb server :
> adb kill-server
列出手機裝的所有app的包名:
> adb shell pm list packages
列出系統應用的所有包名:
> adb shell pm list packages -s
列出除了系統應用的第三方應用包名:
> adb shell pm list packages -3
使用 grep 來過濾:
> adb shell pm list packages | grep qq
清除應用數據與緩存
> adb shell pm clear <packagename>
強制停止應用
> adb shell am force-stop <packagename>
獲取logcat日誌信息:
> adb logcat
> adb logcat -d > 路徑\文件名.txt #一定時間內的log輸出到文件裏
獲取內存信息:
> adb shell dumpsys meminfo <進程名>
獲取CPU消耗信息:
> adb shell top -n 1 |find "進程名"
獲取電量信息:
> adb shell dumpsys battery
獲取GPU信息:
> adb shell dumpsys gfxinfo <進程名>
查看被測應用的進程ID:
> adb shell ps |grep <packagename>
查看被測應用的用戶ID:
> adb shell cat /proc/$pid/status
獲取流量信息:
> adb shell cat/proc/uid_stat/<被測應用的uid>/tcp_rcv
重啟
> adb reboot
獲取序列號
> adb get-serialno
獲取 MAC 地址
> adb shell cat /sys/class/net/wlan0/address
查看設備型號
> adb shell getprop ro.product.model
查看 Android 系統版本
> adb shell getprop ro.build.version.release
查看屏幕分辨率
> adb shell wm size
查看屏幕密度
> adb shell wm density
Monkey日誌保存到PC中:
> adb shell monkey [option] <count> >d:\monkey.txt
Monkey日誌保存到手機:
> adb shell
>monkey [option] <count> > /mnt/sdcard/monkey.txt
Monkey日誌標註流與錯誤流分開保存:
> monkey [option] <count> 1>/sdcard/monkey.txt 2>/sdcard/error.txt
上傳腳本和jar包到手機:
> adb push Monkey.jar /data
> adb push monkey /data
> adb shell chmod777 /data/monkey
------------------------------------------------------------------------------------------------
本文參考《騰訊android自動化測試實戰》以此向各位大神致敬!
android adb shell and monkey 學習記錄