1. 程式人生 > 程式設計 >appium+python adb常用命令分享

appium+python adb常用命令分享

前言:

在appium中adb命令的使用必不可少,做android測試嘛,adb命令肯定肯定是每天都要用的啦,所以今天給特地寫個部落格吧!

這裡就不介紹adb是什麼以及怎麼安裝adb了,因為這些東西網上一搜一大把!沒必要重寫。

對於這些常用的adb命令網上也都有介紹,我這裡其實就是簡單彙總吧。

一、檢查裝置

前提:安卓裝置開啟開發者模式,開啟usb除錯

1.如何檢查手機(或模擬器)是連上電腦的,在cmd輸入:

appium+python adb常用命令分享

二、安裝app

第一步:先下載apk檔案包到電腦

第二步:cmd埠輸入adb install 後把apk直接拖進來就ok

出現success就代表ok了

三、解除安裝app

1.在cmd輸入以下指令,可以刪除app

>adb uninstall 包名

(這裡是app的包名,不是檔名,包名用前面的aapt工具檢視,輸入aapt dump badging +apk可以看到包名)

2.以淘寶為例,淘寶的包名是:com.taobao.taobao

appium+python adb常用命令分享

出現success代表OK了

四:殺掉adb程序:

adb kill-server

五:重啟adb服務

adb start-server

六:重啟安卓裝置

adb reboot

七:進入shell模式:

注:android的系統是基於linux系統開發的,adb shell就是進入shell模式

adb shell

appium+python adb常用命令分享

八:檢視檔案詳情和進入資料夾操作

進入shell模式後 :cd sdcard

appium+python adb常用命令分享

九:列出當前資料夾下目錄

在某一資料夾下:ls -a

appium+python adb常用命令分享

十:退出shell模式

直接輸入 exit

appium+python adb常用命令分享

十 一:從手機下載檔案到本地

找到需要匯入的檔案路徑後,先exit退出shell,再執行

命令: adb pull [手機路徑] [電腦路徑]

注意:手機路徑是左斜槓/ 電腦路徑是右斜槓 (不能直接導電腦根目錄,得指定一個已經存在的資料夾)

appium+python adb常用命令分享

如上圖所示,代表匯入本地成功

appium+python adb常用命令分享

2.想匯出資料夾下的全部內容,就不用指定檔名稱了,到資料夾這一層目錄就行,如/sdcard/DCIM/Camera/Screenshots D:Testapk

appium+python adb常用命令分享

十 二 :把電腦的檔案匯入手機,跟上面操作剛好相反

.把電腦的檔案匯入手機,跟上面操作剛好相反

命令: adb push [電腦路徑] [手機路徑]

如果想在手機上建立一個資料夾,可以進shell模式,用mkdir建立

如下:我在sd根目錄建立了一個haha的資料夾

appium+python adb常用命令分享

下面將檔案匯入手機:

前提還是需要先退出shell模式

實現如下:

appium+python adb常用命令分享

檢查哈haha資料夾下是否成功:

appium+python adb常用命令分享

如圖所示,已經匯入手機成功!

總結:在cmd命令中使用的命令格式與shell模式中的格式有所不同,因為cmd中使windows系統,而在shell中是linux系統所以有所區別。比如在cmd中返回上層資料夾命令是:cd.. (cd加兩個點),但是在shell中返回上層資料夾就用linux命令了: cd - (注意 cd和-中間有空格!)。所以總結來說在shell模式下要用linux命令來實現。昨天寫到第十二個時下班了,今天繼續!

十三:logcat輸出日誌

做app測試,遇到異常情況,檢視日誌是必不可少的,日誌如何輸出到手機sdcard和電腦的目錄呢?這就需要用logcat輸出日誌了

以下操作是基於windows平臺的操作:adb logcat | find

linux平臺的操作可以把find改成grep: adb logcat | grep

windows上的dos裡面是沒grep指令的

1.把日誌存入電腦的某個目錄,如d:\Testapk

appium+python adb常用命令分享

2. 使用find過濾包名

如果直接用adb logcat抓日誌的話,會把系統的一些其他無關緊要的都抓出來,如果只想抓取被測app的日誌,那就根據包名過濾

命令:adb logcat | find "com.mld.Lantin" >d:\Testapk\22.txt

appium+python adb常用命令分享

appium+python adb常用命令分享

3.結束logcat

1.結束logcat抓包,可以用ctr+c快捷鍵結束, 這個是通過手工的快捷鍵操作完成

4.logcat其它功能

1.cmd輸入adb logcat -help可以檢視其它功能

命令:adb logcat -help

C:\Users\admin>adb logcat -help
Unrecognized Option h
Usage: logcat [options] [filterspecs]
**選項**:
-- "-s"選項 : 設定輸出日誌的標籤,只顯示該標籤的日誌;
 
-- "-f"選項 : 將日誌輸出到檔案,預設輸出到標準輸出流中,-f 引數執行不成功;
 
-- "-r"選項 : 按照每千位元組輸出日誌,需要 -f 引數,不過這個命令沒有執行成功;
 
-- "-n"選項 : 設定日誌輸出的最大數目,需要 -r 引數,這個執行 感覺 跟 adb logcat 效果一樣;
 
-- "-v"選項 : 設定日誌的輸出格式,注意只能設定一項;
 
-- "-c"選項 : 清空所有的日誌快取資訊;
 
-- "-d"選項 : 將快取的日誌輸出到螢幕上,並且不會阻塞;
 
-- "-t"選項 : 輸出最近的幾行日誌,輸出完退出,不阻塞;
 
-- "-g"選項 : 檢視日誌緩衝區資訊;
 
-- "-b"選項 : 載入一個日誌緩衝區,預設是 main,下面詳解;
 
-- "-B"選項 : 以二進位制形式輸出日誌;
 
**過濾項格式** : <tag>[:priority],標籤:日誌等級,預設的日誌過濾項是 " *:I " ;
 
-- V : Verbose (明細);
 
-- D : Debug (除錯);
 
-- I : Info (資訊);
 
-- W : Warn (警告);
 
-- E : Error (錯誤);
 
-- F : Fatal (嚴重錯誤);
 
-- S : Silent(Super all output) (最高的優先順序,可能不會記載東西);
 
'*' by itself means '*:D' and <tag> by itself means <tag>:V.
If no '*' filterspec or -s on command line,all filter defaults to '*:V'.
eg: '*:S <tag>' prints only <tag>,'<tag>:S' suppresses all <tag> log messages.
 
If not specified on the command line,filterspec is set from ANDROID_LOG_TAGS.
 
If not specified with -v on command line,format is set from ANDROID_PRINTF_LOG
or defaults to "threadtime"

注:需要用到logcat的時候看看這張表的help內容應該就知道怎麼用了,很全!這裡就不逐一去寫了,自己需要用,自己參照上圖!

以上這篇appium+python adb常用命令分享就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。