1. 程式人生 > >android adb shell and monkey 學習記錄

android adb shell and monkey 學習記錄

型號 orm -a reboot 觸摸事件 serial roc ear cpu

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 學習記錄