adb+monkey常用命令记录升级版

  为什么要叫升级版呢,本来打算自己写一下adb常用命令的,但是在网上看到一个比较好的,就没有自己从头开始写,但是该博主写的有点小瑕疵就是缺少日志过滤和关于monkey的命令,笔者就加了关于日志和monkey的部分,在这里分享给大家,也是我自己忘了时方便过来查看。

----------------------------------------------------------------------------------------------------------------------------------------------------------

  该文章除关于日志的部分外都是转自简书:xFlamingo,想看原文可以在简书搜索该作者。

在日常测试中,android的app测试是非常重要的一环,熟练使用adb命令则能极大的帮助我们协助(怼)安卓开发,自证不仅会点点点,让我们来看看adb的常用命令。

1.查看当前pc连接有几台安卓设备

可能是通过usb连接的,也可能是通过wifi连接的

可能是真机,也可能是模拟器

2.查看当前adb版本

3.安装/卸载应用

install apk文件名,如果不在当前文件夹还需要加上绝对路径

uninstall apk包名,至于如何获得apk的包名请看8.获得当前正在运行的应用包名,活动名

 

 4.手机和pc互传文件

pull 手机上的文件 pc上的路径   ——将手机上的文件传到pc

push pc上的文件 手机上的路径   ——将pc上的文件传到手机

5.adb-server 的开启与关闭

6.获取日志文件

-v time   ——在日志文件中加上时间

> path   ——导出到pc的路径

分析日志文件是很重要的,我可能会另外再写一篇文章对日志文件进行分析

7.手机重启

8.adb shell两种使用方法

⑴.通过adb shell <command>直接调用

⑵.先进入安卓系统,再使用command,exit退出

 

9.启动应用

am start -n 应用的包名/应用的活动名

10.获得当前正在运行的应用包名,活动名

返回值中的第一个com.xxx为包名

第二个com.xxx为活动名

这两个参数经常会用到,尤其是包名

11.获得应用的apk所在路径

pm path 应用的包名

12.手机录屏

screenrecord 手机上存储的路径

ctrl+c结束

13.手机关机

此处的ERROR不太清楚啥意思,懂的大佬可以解答一下

14.查看日志

adb logcat可以查看日志信息

 这种情况是查看所有日志,可能比较多,在这么多日志中找出我们想要的可能有点费劲,怎么办呢?我们可以使用adb logcat -c先清除以前的日志。

 这样就会只记录从清除时间开始的日志了。

有的小伙伴这会可能已经发现了,即使清除了前面所有的日志,打印出的日志信息还是非常多,有没有办法可以在过滤一下呢?我们先看一下日志等级吧

     V — 明细 (最低优先级)

     D — 调试

     I — 信息

     W — 警告

     E — 错误

     F — 严重错误

     S — 无记载 (最高优先级,没有什么会被记载)

我们知道了日志的等级,想要过滤的话可以使用adb logcat *:W

  :冒号后面可以跟任意等级的缩写如WEF

如果这样你看着还是觉得多的话,可以指定只看某一个App的日志信息

adb logcat | findstr com.huahua.testing

com.huahua.testing是“普通话测试”这款ApppackageName,这样日志信息就只显示这款App的内容了。

配合上前面说过的日志等级:adb logcat *:E | findstr com.huahua.testing

 

15.adb shell monkey 500

随机发送500个事件整机测试

16.adb shell monkey –p com.wlqq 500

只测试com.wlqq这个应用 ,发送500个事件

 

如果要指定多个应用可以这样写,以淘宝和货车帮为例: adb shell monkey –v –p com.wlqq –p com.taobao.taobao 1000;跑多个应用时,需要把每个个应用的package name 前面加-p

17.adb shell monkey --throttle 3000 –p com.wlqq 500

 限制每次发送的指令的时间间隔是 3000ms,注意 throttle前面是两个横杠 –throttle

 

18.adb shell monkey –v –p com.wlqq 500

-v代表日志等级 ,打印相关的发送指令等信息日志等级总共3级,从低到高分别是-v最简单(默认)),-v -v提供了较为详细的测试信息)和-v -v -v提供了更多的设置信息,如测试中选中或未选中的Activity信息

 

 

 

19链接多个devices时候,指定在一个设备上运行

 adb –s c6149fa shell monkey -p com.wlqq 500

 

-s 加设备名,指定机器上运行

-v 表示输出的日志信息登记 ,可叠加使用 ,最多3个 –v ,日志登记越低越全

20. 指定monkey发送的指令的百分比,如触摸指令发送30%,基本导航指令30%

--throttle 在事件之间插入固定延迟。通过这个选项可以减缓 Monkey 的执行速度。如果不指定该选项, Monkey 将不会被延迟,事件将尽可能快地被产成。

--pct-touch 调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)

--pct-motion 调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)

--pct-trackball 调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)

--pct-nav 调整基本导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)

--pct-majornav 调整主要导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)

--pct-syskeys 调整系统按键事件的百分比(这些按键通常被保留,由系统使用,如HomeBackStart CallEnd Call及音量控制键)

--pct-appswitch 调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法。

--pct-anyevent 调整其它类型事件的百分比。它包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等。

  

原文地址:https://www.cnblogs.com/lirongyang/p/12035315.html