美文网首页
自动化工具-ADB

自动化工具-ADB

作者: 烨枫_邱 | 来源:发表于2017-12-18 15:58 被阅读0次

    ADB命令在手机端的自动化控制和处理


    1. Android adb 模拟滑动 按键 点击事件

    模拟事件全部是通过input命令来实现的,首先看一下input命令的使用:(掌握以下几组命令并有效模块化封装算是入门了)

    usage:  input ...

                input text

                input keyevent

                input tap

                input swipe

    1).  keyevent指的是android对应的keycode,比如home键的keycode=3,back键的keycode=4.具体请查阅 http://blog.csdn.net/huiguixian/article/details/8550170,然后使用的话比较简单,比如想模拟home按键:

    adb shell input keyevent 3  (请查阅上述文章,根据具体keycode编辑即可)

    2). 关于tap,模拟的是touch屏幕的事件,只需给出x、y坐标即可。此x、y坐标对应的是真实的屏幕分辨率,所以要根据具体手机具体看,比如想点击屏幕(x, y) = (250, 250)位置:

    adb shell input tap 250 250

    3). 关于swipe同tap是一样的,只是他是模拟滑动的事件,给出起点和终点的坐标即可。例如从屏幕(250, 250), 到屏幕(300, 300)即:

    adb shell input swipe 250 250 300 300

    2. Android adb 获取日志

    实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志,状态信息的有:adbshellcat /proc/kmsg ,adb shell dmesg,adb shell dumpstate,adb shell dumpsys,adb bugreport,工程模式等。

    1). adb logcat -b main -v time> Test.log   By时间打印全程日志

    2). adb logcat -b radio -v time> Radio.log  By时间打印射频相关日志

    3). adb logcat -b events -v time>Events.log  By时间打印触屏事件日志

    4). adb shell kernel cat /proc/kmsg  抓取Linux kernel日志,查看kernel信息

    Modem、CPU、Memory、Battery信息就不一一列举了

    3. Android 如何利用上述命令快速写出基于坐标的录制回放工具

    1). 将adb的执行封装成一个公有方法(话不多说,直接上代码)


    2). 将操作封装成各自公有的动作方法


    3). 构造测试用例类并执行

    CaseDemo1中串联了一系列的操作步骤,在Main函数里执行之前需要输入操作需要对应的坐标点;在执行的时候别忘记起adb logcat进行日志的监控!

    以上是一版最基础而简单的lAndroid手机录制回放工具;也可以稍作修改满足参数化输入击点坐标的功能,也可以丰富其断言法则;由于是基于坐标回放的,因此在脚本的适应范围上存在局限性;当然这里也可以技巧性的做一下坐标系的转换即可实现多Android机型不同分辨率的覆盖。

    相关文章

      网友评论

          本文标题:自动化工具-ADB

          本文链接:https://www.haomeiwen.com/subject/cirmwxtx.html