zoukankan      html  css  js  c++  java
  • APP测试之ADB最全指南

    ADB全称Android Debug Bridge, 是android sdk里的一个工具,目的是起到调试桥的作用,用这个工具可以直接操作管理android模拟器或者真实的andriod设备(手机),是客户端测试常用的辅助工具。
    借助adb工具,我们可以管理设备或手机模拟器的状态,还可以进行很多终端操作,如安装软件、卸载软件、系统升级、运行shell命令等,让用户在电脑上对手机进行全面的操作、记录终端操作日志。
    而且adb可以跨平台,也就意味着在不仅在windows,在mac、linux平台都可以来使用adb命令,我们只需要下载配置对应平台软件包即可,可以说给我们测试APP帮助大大滴有,我们今天主要介绍在windows平台下操作android设备。

    ADB作为一个客户端/服务器架构的命令行工具,主要由3个部分组成。

    (1)Adb clent(客户端):可以通过它对Android应用进行安装、卸载及调试。(2)adb service(服务器):管理客户端到Android设备上abd后台进程的连接。  (3)adb daemon(守护进程):运行在Android设备上的adb后台进程。

    JDK以及ADB环境搭建

    在使用ADB命令之前我们需要准备好相关的环境,以下介绍环境搭建,包括JDK环境搭建以及ADB环境搭建,已经搭建好的小可爱可略过。

    安装及配置JDK环境:安装JDK-配置环境变量-检查是否安装成功。

    一、下载安装JDK

    1.找到与电脑的系统位数对应的JDK版本安装包(官网下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html,选取自己电脑所对应32位或64位版本,也可以在微信公众号后台回复:20191004)

    图片

    coco准备的是JDK 1.7

    图片

    2.右键选择“打开”>点击“下一步”

    图片 

    3.默认安装到C盘

    图片

    4.默默等待JDK安装,出现此页表示安装成功。 

    图片

    5.配置环境变量

    (1)去到配置环境变量的位置:计算机>控制面板>系统>高级系统设置>环境变量:

    图片

    (2)找到自己的JKD安装位置: 

    图片 

    (3)新建JAVA_HOME系统变量:选择“系统变量”下方的“新建”,填写:

    变量名:JAVA_HOME

    变量值:C:Program FilesJavajdk1.7.0_55(直接复制路径)

    图片

    (4)寻找path变量进行编辑:在变量值最后输入 %JAVA_HOME%in;%JAVA_HOME%jrein;

    (注意看原来Path的变量值末尾有没有;号,如果没有,先输入英文的;号再输入上面的代码)

    图片 

    (5)新建CLASSPATH变量:选择“系统变量”下方的“新建”,填写>点击“确定”:

    变量名:CLASSPATH

    变量值:

    .;%JAVA_HOME%lib;%JAVA_HOME%lib ools.jar

    图片

    (6)变量值填写: 

    .;%JAVA_HOME%lib;%JAVA_HOME%lib ools.jar(注意最前面有一点),系统变量配置完毕,点击“确定”>“确定”即可。

    6.检验是否配置成功 运行cmd 输入 java -version (java 和 -version 之间有空格)

    若如图所示显示版本信息则说明安装和配置成功,恭喜你成功安装JDK!

    图片

    二、安装ADB及配置环境

     

    安装及配置ADB环境:下载ADB工具-配置环境变量-检查是否安装成功(ADB工具可在微信公众号后台回复:20191004进行下载)

    1.下载后将platform-tools.zip解压,如下:

    图片

    2.在系统变量中新建ADB

    变量名:ADB

    变量值:E:platform-toolsplatform-tools(直接复制你的ADB解压路径)

    图片 

    3.在Path变量中追加一句;%ADB%,之后点击确定保存即可。

    图片

    4.检验是否配置成功 :运行cmd 输入adb ,恭喜安装成功!

    图片

    5.自己的安卓手机通过USB线连接电脑:

    (1)确保手机已经通过USB线连接到电脑;

    (2)通过驱动软件,驱动精灵/驱动人生等,将android手机驱动安装好;

    (3)进入到手机,找到设置>关于手机>点击版本号>将对应的开发者选项打开(注意:由于手机型号不同,如小米,魅族,华为可能打开方式稍微有差异,如果不清楚,百度搜索手机型号对应的开发者选项);

    (4)退出到上一级菜单,进入到开发者选项,找到USB调试模拟器将其打开;

    (5)最后,一般会出来一个确认调试的对话框,也需要勾选上,不然adb命令用不了;

    图片 

    (6)在cmd运行窗口输入命令:“adb devices”,显示已连接的设备信息。

    图片

    7.使用安卓模拟器连接电脑

    (1)Android模拟器和真实的android设备连接是有区别的,如果使用的是genymotion模拟器,在模拟器已经设置了,所以genymotion模拟器会自动帮你加载连接adb,我们直接通过adb devices命令就可以检测到。

    图片

    (2)如果使用的是夜神/海马玩等模拟器,不会自动帮你连接上,所以需要我们手动通过命令adb connect连接。如夜神就是adb connect 127.0.0.1:62001

    (这里的127.0.0.1表示本地的ip地址,任何电脑都有这个地址,62001表示夜神模拟器的端口号)。

    (3)如果用的是海马玩模拟器的话,那么端口号改成26944即可。

    图片

    ADB常用命令

    注:adb 使用的端口号是5037,以下总结工作中常用到的adb命令。

    1.查看帮助手册列出所有的选项说明及子命令:

    adb help

    2. 获取设备列表及设备状态:

    adb devices

    3. 获取设备的状态,设备的状态有 device , offline , unknown3种,其中device:设备正常连接,offline:连接出现异常,设备无响应,unknown:没有连接设备。

    adb get-state

    4.结束和启动adb服务:adb kill-server /adb start-server , 结束 adb 服务/启动 adb 服务,通常两个命令一起用,设备状态异常时使用 kill-server,运行 start-server 进行重启服务。

    adb kill-server

    adb start-server

    5.打印及清除系统日志:adb logcat , 打印 Android 的系统日志 ;adb logcat -c,清除日志。

    adb logcat

    adb logcat -c

    6.生成bugreport文件:adb bugreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误,输出比较多,建议重定向到一个文件中,如adb bugreport > d:ugreport.log

    adb bugreport

    7.安装应用:adb install , 安装应用,adb install -r 重新安装。

    adb install

    adb install -r

    8.卸载应用:adb uninstall , 卸载应用,后面的参数是应用的包名,区别于 apk 文件名

    adb uninstall 

    9.将 Android 设备上的文件或者文件夹复制到电脑本地:adb pull , 如复制 Sdcard 下的 pull.txt 文件到 D 盘:adb pull sdcard/pull.txt d:,重命名:adb pull sdcard/pull.txt d: ename.txt

    adb pull 

    10.推送本地文件至 Android 设备:adb push , 如推送 D 盘下的 push.txt 至 Sdcard:adb push d:push.txt sdcard/   注意sdcard 后面的斜杠不能少。

    adb push

    11. 重启 Android 设备:adb reboot ,  adb reboot recovery,重启到Recovery界面;   adb reboot bootloader,重启到bootloader界面。

    adb reboot

    adb reboot recovery

    adb reboot bootloader

    12.获取 root 权限:adb root , adb remount,可以直接获取 root 权限,并挂载系统文件系统为可读写状态。

    adb root

    adb remount

    13.返回设备序列号SN值:

    adb get-serialno

    14.获取设备的ID:

    adb get-product

    15.进入设备shell:

    adb shell

    16.列出所有的应用的包名:

    adb shell pm list package

      

    17.截屏并保存至 sdcard 目录:

    adb shell screencap -p /sdcard/screen.png 

      

    18.录制视频并保存至sdcard:adb shell screenrecord sdcard/record.mp4,执行命令后操作手机,ctrl + c 结束录制,录制结果保存至 sdcard:

    adb shell screenrecord sdcard/record.mp4

      

    19.获取设备分辨率:adb shell wm size

    adb shell wm size

      

    20.列出指定应用的 dump 信息:adb shell pm dump 包名

    adb shell pm dump

      

    21.列出对应包名的 .apk 位置:adb shell pm path 包名

    adb shell pm path 

      

    22.查看当前终端中的进程信息:adb shell ps

    adb shell ps

    23.monkey测试:adb shell monkey –p 程序包 –v 测试次数 ,比如“adb shell monkey –p com.htc.Weather –v 20000”意思是对com.htc.Weather 这个程序包单独进行一次20000次的monkey测试

    adb shell monkey –p 程序包 –v 测试次数

      

    24.显示所有程序包:

    adb shell ps | grep [process]

      

    25.根据进程pid或包名查看进程占用的内存

    adb shell dumpsys meminfo<pid>

    adb shell dumpsys meminfo<package_name>

      

    以上这些ADB命令在APP面试中被问的可能性以及工作中要用的可能性不言而喻,大家多敲敲键盘就可以掌握了。

  • 相关阅读:
    经典网络复现(0)多层感知机和lenet
    将自有数据集下yolov训练结果(*.weights) 在进行部署
    DL基础学习计划
    自有数据集上使用keras训练YOLOv3目标检测
    《基于深度学习的图像语义分割方法综述》阅读理解
    Hessian矩阵以及在血管增强中的应用—OpenCV实现
    QML官方例子Calculator初步解析
    human_pose_estimation_demo的再进一步研究(基于OpenPOSE)
    10年图像处理工程师学习图像处理的小结
    human_pose_estimation_demo的进一步研究(基于OpenPOSE)
  • 原文地址:https://www.cnblogs.com/chenyablog/p/15172474.html
Copyright © 2011-2022 走看看