偷偷告诉你ADB命令葵花宝典【一键截图和录屏】

先导预告

作为一名测试工程师,每天可能都会面临从不同的设备导出截图或视频的工作,有些可能是bug截图或bug回放视频,有些截图可能是提供给PM或UI验收等等。 常规操作是iOS设备可以借助于iTools等工具导出;而安卓设备可能需要从设备文件系统中找到相册,再从相册中找出要导出的视频或图片。 其他方案是通过微信或QQ导出等。

问题

由于安卓厂商繁多,各个厂商不一,测试时有些设备可能是临时借用的测试机,不太熟悉设备文件系统的路径,导出图片或视频时会浪费一些不必要的时间,如果通过微信或QQ需要进行登录登出操作,也很繁琐,如果你也遇到了这些问题,那么本文会帮你解决烦恼哦。本文主要是解决安卓设备导出图片和视频导出成本高的问题。

思路

安卓设备上守护进程 (adbd)可支持运行adb命令,且adb提供了截图和录屏命令。因此,先利用adb截图和录屏命令将截图和视频保存在设备上,然后将截图和视频导出到电脑上的固定路径下,最后将设备上的截图和视频删除。 将以上步骤封装在一个脚本中,当需要截图或录屏时只需要小手一点,一步实现。

解决方案

1、通过adb命令将截图和视频保存在设备上临时目录

2、将设备临时目录下的视频和图片push到电脑

3、删除设备上的图片和视频

以上步骤的操作命令复制到bat或sh脚本中,然后在命令行中执行bat或sh脚本,即可实现一键式截图和录制视频了。下面有具体示例可参考,你值得一试哦!

具体示例

屏幕截图 screenshot.bat


#第一步 截屏临时保存到 Android 系统的临时目录

adb shell screencap -p /data/local/tmp/screenshot.png

#第二步 将截图上传到PC本地

adb push /data/local/tmp/screenshot.png C:\Users\xxx\Desktop\screenshot.png

#第三步 删除Android系统临时目录生成的截图

adb shell rm /data/local/tmp/demo.png
复制代码

屏幕录制 screenrecord.bat

#第一步 录制屏幕临时保存到 Android 系统的临时目录

adb shell screenrecord --bugreport --time-limit 20 /data/local/tmp/screenrecord.mp4


#第二步 将录屏视频上传到PC本地

adb push /data/local/tmp/demo.mp4
 C:\Users\xxx\Desktop\screenrecord.mp4

#第三步 删除Android系统临时目录生成的录屏视频

adb shell rm /sdcard/demo.mp4
复制代码

环境数据准备

1、Android设备,且开启USB调试

2、配置adb环境的电脑一台

3、USB数据线,注意有些仅有充电功能,没有数据传输功能

4、命令参数调试,如下

可通过adb shell screenrecord --help查看帮助命令,截取部分如下

\--bugreport Add additional information, such as a timestamp overlay, that is helpful in videos captured to illustrate bugs. --time-limit TIME Set the maximum recording time, in seconds. Default / maximum is 180.

读完本文或许你会好奇adb到底是什么,它的工作原理是什么,它有什么功能,学习它有什么好处呢?

后续会更新adb的工作原理和以及它的主要功能,敬请期待!

感兴趣的小伙伴可以WeChat公众号:琦哥私房菜

或扫描下方图片即可获取最新文章啦。

你可能感兴趣的:(测试,测试工具,adb,脚本,自动化测试)