adb常用命令

adb常用命令

adb常用命令(常看设备、启动关闭adb服务)

  • adb devices 常看手机的设备ID名称以及状态

    emulator-5554 device emulator-5554表示的是手机设备的ID名称, device表示设备处于在线状态,

    如果不在线显示的是offline 如果adb服务没有启动,下发该命令时,会自动的去启动adb的服务

  • adb start-server 启动adb服务

  • adb kill-server 关闭adb 服务

获取包名和界面名

  • 包名: app包名 ,通过app的包名来区分不同的app,app包名是唯 一的

  • 界面名(启动名): 相当于web页面当中的链接地址,在app当中,每个界面都有一个名字

原因:自动化过程当,需要通过app的包名和界面名来启动app。

  • 操作步骤: adb命令

    • 在手机或者模拟器上面打开app

    • windows命令一:adb shell dumpsys window windows | findstr mFocusedApp

    • windows命令二: adb shell dumpsys window |findstr "usedApp"

      com.android.settings/.Settings com.android.settings是包名, .Settings是界面名 通过 / 分隔包名和界面名

      LINUX/MacOS命令一: adb shell dumpsys window windows | grep mFocusedApp

      LINUX/MacOS命令二: adb shell dumpsys window |grep "usedApp"

  • 通过aapt获取app的包名和界面名

    • aapt dump badging D:\BaiduNetdiskDownload\apptools\apk\xuechebu.apk 后面表示的是app安装包的路径及名称

      包名: package: name='com.bjcsxq.chat.carfriend' # package:name 后面的字符串表示的是app的包名

      界面名: launchable-activity: name='com.bjcsxq.chat.carfriend.module_main.activity.SplashActivity' launchable-activity: name后面的字符串是界面

安装卸载app

  • app安装 adb install 路径/app安装包名称

  • app卸载 adb uninstall 包名

上传下载文件

  • 上传 将电脑上的文件上传到手机

    adb push 电脑上的文件路径 手机的路径

    例子:adb push ./monkey.txt /sdcard

  • 下载文件 从手机上下载文件到本地

    adb pull 手机的文件路径 电脑的文件夹路径

    例子:adb pull /sdcard/monkey.txt D:\opt

查看日志信息

为什么要获取日志信息:用来给开发定位问题。

adb logcat 来查看相关的日志信息

测试app的启动速度(性能测试)

  • 测试app启动速度的命令:

    adb shell am start -W 包名/界面名

    Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.baidu.homework/.activity.user.passport.ChoiceLoginModeActivity } Status: ok Activity: com.baidu.homework/.activity.user.passport.ChoiceLoginModeActivity ThisTime: 3345 TotalTime: 3345 WaitTime: 3378

  • 需要大家关注的是TotalTImie的时间值,那么在实际的测试过程当,会进行多次测试,然后取平均值。

稳定性测试 (8小时)

  • monkey 集成在adb工具当中,主要用来做稳定性测试用的, monkey是通过java语言编写的一种稳定性测试工具。

    主要用来测试app会不会出现crash(崩溃)的情况。

    相当于让一只猴子来随机操作app,所有的操作都有可能出现,长时间的操作来测试app会不会出现问题。

  • monkey常用的参数

    • -p 参数 对指定的app进行随机操作

    adb shell monkey -p com.baidu.homework 100 (100次随机事件)

    • -v 参数 表示的是记录信息的级别

      level 0:adb shell monkey -p com.baidu.homework -v 100 默认级别

      level 1: adb shell monkey -p com.baidu.homework -v -v 100 打印出来的信息会比较详细,只打印跟本程序相关的日志信息

      level 2: adb shell monkey -p com.baidu.homework -v -v -v 100 打印出来的信息会更多,会显示出其他程序运行的信息

    • -s 用于指定伪随机数。如果两次的伪随机数相同,那么两次的操作步骤、流程、操作事件完全一样。

      主要的作用,就是用来复现上次的问题

      adb shell monkey -p com.baidu.homework -v -v -s 10 100

    • --throttle 用于指定随机事件的间隔时间, 单位是毫秒

      adb shell monkey -p com.baidu.homework -v -v --throttle 3000 -s 10 100

    组合使用:

    adb shell monkey -p com.baidu.homework --throttle 500 --pct--touch 10 --pct-motion 50 -v -v -s 100 300> log.log

    --pct--touch 10 触模(10表示的是整个随机同件中的百分比)

    --pct-motion 50 滑屏(50表示的是整个随机同件中的百分比)

  • 日志分析

    如果在日志里面出现了 ANR(application not responsing)

    如果日志中出现了Exception,可能程序崩溃。

adb 操作命令

  • 手势操作命令

    • 模拟点击事件

      adb shell input tap x y # x y表示的是坐标点 参数之间用空格隔开

    • 模拟滑屏事件(参数之间用空格隔开)

      adb shell input swipe startx starty endx endy # startx, starty 表示的是起始点坐标,endx,endy表示的是终点坐标

    • 模拟键盘操作

      adb shell input keyevent 键值 (3 表示的HOME键 4 表示的返回键 66表示的回车键)

    • 模拟输入操作

      adb shell input text 内容 内容表示要输入的内容,另外输入的内容不能是中文

  • offline的设备,记得重启一下adb服务

  • 如果电脑上面连接了多个模拟器或者是手机。那么需要加上一个参数 -s device_name 

    adb -s emulator-5554 shell input keyevent 4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值