adb shell命令_Appium学废系列(三) adb调试桥命令

f2c6cdbb6ad18ce74edd8d688e1f0400.png 

  正文共:1731字  预计阅读时间:10分钟

上一篇文章《Appium-desktop配合真机实现自动化》,我们已经能成功使用Appium并借助Appium-desktop工具去完成一个基础脚本的录制,而其中在配置Desired Capabilities启动参数的时候,我们接触到了安卓的adb命令,但是还不够了解它。所以今天我们就以安卓APP为例子再来讲解下常用的adb命令以及APP结构

1

adb调试桥命令

adb

adb:全名Android debug bridge

你可以直接在窗口输入adb来查看基础的帮助,会列举出adb所有的功能

9f4a78ed0768122c25900760ab82e861.png

其中adb有很多重要的子命令比如:

adb devices: 查看当前正在连接的所有设备

dfdcf4d05a5127c74f48cbe204a94e9e.png

adb kill-server:关闭adb的后台进程

adb 本质是在后台开启一个server,这个server会接收adb的各种命令,他会帮你管理与手机与模拟器的一个连接,这个后台服务有时候会出现一些问题,我们可以使用adb kill-server关闭adb的后台进程

adb tcpip:测试工程师非常喜欢的命令,本来真机和PC机的连接使用的是USB线,测试的时候就比较受限,tcpip可以让我们开启与安卓真机之间的TCP连接,可以直接脱离数据线的束缚。实现手机只要和PC机在同一个wifi网络下,或者借助一些特殊的转发手段,也可以实现让其他地方的PC去远程控制本地多台手机

adb connect: 开放一个端口,进行tcp远程连接

adb logcat: 日志查看

adb Bugreport:收集日志数据,用于后续的分析,比如耗电量,内存、cpu数据等

adb shell

adb shell 可以直通你的手机,可以在手机打开shell通道,调用Android内置的命令,这是使用非常频繁的命令

adb shell dumpsys: 获取app各种各样很重要的信息,比如cpu、内存、耗电量、网络流量等

adb shell pm: 包管理工具

adb shell am Activity管理工具

adb shell ps 进程

adb shell monkey monkey测试工具,帮助完成兼容性、随机性测试

几个例子来演示下:

adb install [包名] :  安装某个apk包

adb shell pm clear [包名] :强行杀掉app,清理缓存数据,权限重置

此命令对于测试工程师来说非常重要,因为我们经常会涉及到需要清理缓存数据的自动化场景

adb shell am start -n [包名/activity名] -S:重新再启动app 

adb 自动化测试命令

前面的所述的adb、adb shell 命令都是我们做自动化前需要学习的非常重要的基础,除了上述命令外,还有一些重要的针对自动化测试的命令,比如下述两个:

Uiautomator:  获取到一个app整体的界面结构、执行一些自动化测试,非常底层

Input:完成基础的自动化指令

几个例子来演示下:

adb shell uiautomator: 直接输入命令显示帮助内容,展示它的子命令dump、runtest、events

adb shell uiautomator dump:创建一个当前ui视图结构的xml文件 

2fd46cad5cdc7e7edb6e86ce8848a65f.png

adb shell cat /sdcard/window_dump.xml :查看具体的xml文件内容,了解界面结构,展示app当前界面文件里面的每一个控件,元素,将它变成节点,节点记录了当前控件的大小、类型、定位符等

adb shell uiautomator runtest:执行UI自动化测试

adb shell input:可用于模拟点击、发送文本、拖放等事件,用于最简单的自动化测试的基础命令

3c8580e087f5224d87f8e1549bc7c7ba.png

adb shell input tap 300 563:点击事件 后面是x y轴位置,可以借助一些工具找到坐标点

adb shell input text 12345:输入文本 12345  

adb shell input keyevent 4:键盘事件 返回键

卓性能统计命令 adb shell dumpysys

4803fc979f3f3e6d41eadd41a7b4b09b.png

无人会问我  有没有真的快乐                   时间若到了 便转身离座

无人信任我 我无法可说清楚

如我没有错 何时却要躲

直到不想说话 沉溺孤独一个

No one will ask me if I am really happy

If time comes, turn around and leave

No one trusts me. I can't make it clear

If I'm not wrong, when should I hide

Until I don't want to talk, indulge in solitude

     香港警匪悬疑动作剧《使徒行者3》

End

以防走丢,请及时 星标 置顶 关注 我

 bdbce5193018d5ea7d47bc4af1a879cd.png

? 往期推荐 

Appium学废系列(一)  初识移动APP自动化测试框架Appium

Appium学废系列(二)  Appium-desktop配合真机实现自动化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值