adb和monkey的基本使用

什么是ADB?

ADB,即?Android Debug Bridge,它是Android 開(kāi)發(fā)/測(cè)試人員不可替代的強(qiáng)大工具。

Adb是一種功能多樣的命令行工具,可讓您與設(shè)備進(jìn)行通信。adb 命令便于執(zhí)行各種設(shè)備操作(例如安裝和調(diào)試應(yīng)用),并提供對(duì) Unix shell(可用來(lái)在設(shè)備上運(yùn)行各種命令)的訪問(wèn)權(quán)限。

adb的工作原理

當(dāng)您啟動(dòng)某個(gè)adb 客戶(hù)端時(shí),客戶(hù)端會(huì)先檢查是否有 adb 服務(wù)器進(jìn)程正在運(yùn)行。如果沒(méi)有,它將啟動(dòng)服務(wù)器進(jìn)程。服務(wù)器在啟動(dòng)后會(huì)與本地 TCP 端口 5037 綁定,并監(jiān)聽(tīng) adb 客戶(hù)端發(fā)出的命令 - 所有 adb 客戶(hù)端均通過(guò)端口 5037 與 adb 服務(wù)器通信。

參照鏈接:

https://developer.android.google.cn/studio/command-line/adb

[if !supportLists]三、[endif]adb基本用法

adb 命令的基本語(yǔ)法如下:

adb [-d|-e|-s <serialNumber>] <command>

如果只有一個(gè)設(shè)備/模擬器連接時(shí),可以省略掉?[-d|-e|-s ]?這一部分,直接使用?adb 。

為命令指定目標(biāo)設(shè)備

如果有多個(gè)設(shè)備/模擬器連接,則需要為命令指定目標(biāo)設(shè)備。

-d ?指定當(dāng)前唯一通過(guò)USB 連接的 Android 設(shè)備為命令目標(biāo)

-e ??指定當(dāng)前唯一運(yùn)行的模擬器為命令目標(biāo)

-s <serialNumber> ?指定相應(yīng)serialNumber 號(hào)的設(shè)備/模擬器為命令目標(biāo)

adb -s 485f0fec install C:\Users\xxx\xxx-01.apk

啟動(dòng)/停止adb server:

adb start-server

adb kill-server ?

查看adb版本:

adb version

查找手機(jī)上的安裝包包名

1.adb shell pm list package? ? 查看手機(jī)上所有的安裝包

2.adb shell pm list package -3? ? 查看第三方安裝包

3.adb shell pm list packages -s? ? ?查看系統(tǒng)的包

4.adb shell pm list packages -e “要搜索的內(nèi)容”? ? ?查看啟動(dòng)包中搜索的包

5.adb shell dumpsys window | findstr mCurrentFocus? ?獲取當(dāng)前打開(kāi)的APP包名(前面的為包名,斜杠后面的是當(dāng)前啟動(dòng)的acivity)

6.adb shell pm clear (apk包名)???清除應(yīng)用數(shù)據(jù)與緩存

7.adb shell am force-stop com.peopledailychina.activity ?強(qiáng)制停止應(yīng)用

8.adb pull 和adb push 命令

adb pull <手機(jī)路徑> ? <本機(jī)路徑> ?從手機(jī)中拉取信息到本地電腦上

adb push <本機(jī)路徑> ?<手機(jī)路徑> ?從本地電腦推送信息到手機(jī)上

什么是Monkey?

Monkey是Android中的一個(gè)命令行工具,可以運(yùn)行在模擬器里或?qū)嶋H設(shè)備中。它向系統(tǒng)發(fā)送偽隨機(jī)的用戶(hù)事件流(如按鍵輸入、觸摸屏輸入、手勢(shì)輸入等),實(shí)現(xiàn)對(duì)正在開(kāi)發(fā)的應(yīng)用程序進(jìn)行壓力測(cè)試。Monkey測(cè)試是一種為了測(cè)試軟件的穩(wěn)定性、健壯性的快速有效的方法。(其實(shí)可以想象成一只猴子啥都不知道,瘋狂亂敲......)

Monkey 運(yùn)行在設(shè)備或模擬器上面,可以脫離PC運(yùn)行(一般在一些大公司中都是將其抽離成一個(gè)測(cè)試專(zhuān)用的APP工具,使用相應(yīng)的操作來(lái)完成測(cè)試)。

Monkey命令和基本參數(shù)介紹

注意:所有的參數(shù)都需要放在monkey和設(shè)置的次數(shù)之間,參數(shù)的順序可以調(diào)整;若帶了-p ,-p必須放在monkey之后,參數(shù)必須在-p和count之間:

adb shell monkey -p com.peopledailychina.activity --ignore-crashes --ignore-timeouts ?--ignore-security-exceptions --pct-touch 70 --pct-motion 25 --pct-majornav 5 -v -v -v --throttle 300 -s 100 100000 > C:\Users\xxx\Desktop\monkey.txt

-v??????????默認(rèn)級(jí)別,僅提供啟動(dòng)、測(cè)試完成和最終結(jié)果等少量信息

-v? -v ?????提供較為詳細(xì)的日志,包括每個(gè)發(fā)送到Activity的事件信息

-v? -v? -v???提供最詳細(xì)的日志,包括了測(cè)試中選中/未選中的Activity信息

-s ???????用于指定偽隨機(jī)數(shù)生成器的seed值??

--throttle ??用于指定用戶(hù)事件的操作間隔時(shí)延,單位是毫秒

--ignore-timeouts ?忽略超時(shí)錯(cuò)誤

--ignore-crashes ??忽略crash

--ignore-security-exceptions忽略許可錯(cuò)誤


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容