51Testing软件测试论坛

标题: 常用的adb命令有哪些?请随便写一个monkey脚本,并解释其中参数的含义? [打印本页]

作者: 测试积点老人    时间: 2023-3-16 09:29
标题: 常用的adb命令有哪些?请随便写一个monkey脚本,并解释其中参数的含义?
回复可见




作者: kallinr    时间: 2023-3-17 09:20
忘记了
作者: oliver.tang    时间: 2023-3-17 09:57
shell connect、devices、disconnect
adb monkey -p [] -v xx
作者: jingzizx    时间: 2023-3-17 13:17
device 首先连接设备
作者: litingting0214    时间: 2023-3-17 15:27
disconnect
作者: 花岗岩大炮    时间: 2023-3-18 10:19
一、常用简单的adb命令:

1、adb devices:                        获取设备列表和设备的状态
2、adb get-state:                      获取设备的状态(设备的状态有三种:device,设备连接正常;offline,连接出现异常,设备无响应;unknown,设备未连接;)
3、adb kill-server,adb start-server:  结束,启动adb服务
4、adb install -r:                     覆盖安装应用(apk)
5、adb uninstall:                      卸载应用(应用包名)
6、adb pull :                          将设备上的文件复制到电脑上
7、adb push :                          将电脑上的文件复制到设备上
8、adb reboot :                        重启设备
9、adb connect :                       远程连接设备
10、adb disconnect :                   断开设备连接
二、adb shell pm基本的命令:

1、列出安装在设备上的应用

# adb shell pm list package -s     列出系统应用
# adb shell pm list package -3     列出第三方的应用
# adb shell pm list package -i     列出来源
# adb shell pm list package -f     列出包名和路径
2、列出应用apk的位置

# adb shell pm path packagename    列出应用apk的位置
3、列出应用的详细信息

# adb shell pm dump packagename    列出应用相关的信息
4、清除应用的缓存数据

# adb shell pm clear packagename   清除应用的缓存数据
5、安装卸载手机应用:

首先将test.apk文件push到手机目录中比如/data/local/tmp
# adb shell pm install /data/local/tmp/test.apk       安装
# adb shell pm install –r /data/local/tmp/test.apk    重新安装
# adb shell pm uninstall -k packagename               卸载,加k保留缓存数据
# adb shell pm install -d apk                         允许降级安装
三、adb shell am基本的命令:

1、启动一个 Activity:

# adb shell am start -n activityname    启动一个 Activity
2、等待页面启动完成:

# adb shell am start -W activityname    等待页面启动完成
3、先停止应用再启动:

# adb shell am start -S activityname    先停止应用再启动
4、结束应用:

# am force-stop  packagename            结束应用
三、adb shell dumpsys基本的命令:

1、监控应用数据:

# adb shell dumpsys cpuinfo       cpu信息
# adb shell dumpsys meminfo       内存信息
# adb shell dumpsys power         电源信息
# adb shell dumpsys battery       电池信息
# adb shell dumpsys wifi          wifi信息
# adb shell dumpsys notification  通知信息
# adb shell dumpsys activity      获取页面信息
四、关闭某项进程,以monkey为例:

杀死monkey进程:
# ps | grep monkey     查看monkey进程的pid
# kill pid             杀死monkey进程
五、最近12小时的资源情况:

# dumpsys procstats --hours 12    最近12小时的资源情况
六、录制屏幕命令:

# adb shell screenrecord /sdcard/demo.mp4    视频录制命令
可选参数:
1、限制录制时间:
参数: --time-limit

2、指定视频分辨率大小:
参数: --size

3、指定视频的比特率:
参数: --bit-rate

4、在命令行显示log:
参数: --verbose
七、截图命令:

# adb shell screencap -p /sdcard/screen.png    截图并保存到指定位置
八、input命令:

adb shell input:
<可选参数>
#text 输入文本
#keyevent 输入事件
#tap 点击
#swipe 滑动<坐标><坐标为原地,则是长按>
九、关于获取当前页面的信息:

# adb shell dumpsys activity top | findstr ACTIVITY    获取当前界面的Activity
# adb shell dumpsys activity | findstr mFocusedActivity   获取当前页面的activity
十、生成当前页面的xml文本:

# adb shell uiautomator dump [file]    获取当前页面的xml信息
text 控件中显示的文本内容
class 控件的类型
package 包名
content-desc 说明
checkable 是否允许check
checked check状态
clickable 是否允许click
enabled 控件状态
focusable 是否允许获取焦点
focused 是否获取到焦点
scrollable 是否允许滚动
long-clickable 是否允许长安
password 是否是密码控件
selected select状态
bounds 控件绘制的长宽及位置 四个数据,分成两组,分别是 左上坐标和右下坐标
十一、打印页面的log信息:

# logcat -s ActivityManager    打印页面的log信息
十二、系统操作指令

   adb shell getprop ro.product.model  获取设备型号

adb shell getprop ro.build.version.release  获取设备 Android 系统版本

adb get-serialno  获取设备的序列号(设备号)

adb shell wm size  获取设备屏幕分辨率

adb shell dumpsys activity |find "mFocusedActivity" 查看前台应用包名,适用于 Android 7.0 以下,必须先启动 app

adb shell dumpsys activity |find "mResumedActivity" 查看前台应用包名,适用于 Android 8.0 以上,必须先启动 app





欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2