• ADB 命令


    目录

    常用命令 

    互动操作命令:

    安卓手机投屏

    有线连接投屏

    无线连接投屏

    查看日志

    稳定性测试

    基础 

    进阶 

    查看包名和activity名

    查看app包名

    查看activity名

    手机客户端测试

    appium自动化测

    cmd启动命令appium

    selenium和appium 定位方式


    常用命令 

    停止adb服务:adb kill-server

    启动adb服务:adb start-server

    显示设备分辨率:adb shell wm size

    查看电量:adb shell dumpsys battery

    查看机型:adb shell getprop ro.product.model

    查看adb版本

    adb version

    安装app

    adb install <apk文件名> 

    卸载app

    adb uninstall  <app包名>

    上传文件

    adb push   windows文件夹   安卓文件路径

    下载文件

    adb pull  安卓文件路径  windows文件夹

    am(activity manager ) 命令,用于管理应用的活动页面。启动app需要通过启动页面进行操作。

    adb shell am start -W -S com.testing.shop/com.uzmap.pkg.EntranceActivity

    pm(package manager)命令,是安卓系统中的查看包名的命令。app应用叫做package。

    adb shell pm list package -3 显示第三方包名

    互动操作命令:

    获取屏幕坐标:到开发者选项打开指针位置。

    点击某个坐标

    adb shell input tap x y

    输入某个特定的按键

    adb shell input keyeventkeycode

     滑动 :长按就是一个长时间短距离的滑动

    解析:x1,y1 第一个坐标;x2,y2 第二个坐标;time时间滑动时间

    adb shell input swipe  x1 y1 x2 y2 time

    输入信息

    adb shell input text 《文本》

    安卓手机投屏

    scrcpy 官方下载 scrcpy-win64-v1.24.zip

    使用国内搬运链接:https://wwz.lanzouf.com/iezWX03zx4de

    有线连接投屏

    确定是否连接有线 

    adb devices

    设备连接状态 

    adb get-state

           device:设备正常连接
           offline:连接出现异常,设备无响应
           unknown:没有连接设备      

    如果有线连接设备可以直接投屏

    scrcpy

    无线连接投屏

    确定是否连接有线 

    adb devices

    后面的5555为端口,可以指定其他的端口,前提是端口未被调用

    adb tcpip 5555

    192.168.xxxx.xxxx为你手机的ip地址,5555为了设置·的端口号 

    (手机IP  设置  --找到wifi连接------找到IP地址)需要在同一个网络环境中

    adb connect 192.168.xxxx.xxxx:5555

     检查是否刚才输入192.168.xxxx.xxxx:5555 

    adb devices

    输入scrcpy即可投屏 

    scrcpy

    小知识点:bat中的等待可以通过 ping -n 完成

    查看日志

    查看日志

    adb shell logcat

    结合管道

    稳定性测试

    基础 

    1、monkey就是安卓系统中的一个命令而已,通过/system/framework下的monkey.jar实现。
        学习monkey就是学习参数的使用,以及运行完之后查看日志。

            -s:seed参数表示选择的monkey的种子序列号,相当于选了一套固定的动作来进行操作,一般用于进行操作的复现(但是靠不住)。 
            保持相同的seed和执行次数,可以尝试完成复现。
            --ignore系列: monkey原本的机制是遇到ANR(应用未响应) crashes这些问题的时候会中断monkey执行。ignore就可以让monkey在碰到这些问题之后,依然还是执行。
            --pct系列的参数,指定动作所占百分比,可以将一些syskey的动作指定为0.

    进阶 

    2、monkey使用场景:
        完成app的版本发布之后,用monkey进行长时间无人值守的随机测试,来验证app是否会崩溃或者出现应用未响应,检查对手机的性能影响,跑完之后,检查日志中是否有错误。搜索 error,fail,exception,fatal,crash,timeout,找到了就把日志丢给开发分析。
        基本稳定性测试、终端设备的性能测试,用做冒烟。    

    adb shell monkey -s 1655509870546 -p com.tencent.mobileqq --ignore-crashes --ignore-timeouts --ignore-native-crashes --ignore-security-exceptions -v -v -v 1000000>E:\log4.txt

        如果自己想停止monkey,到安卓系统中用kill命令杀进程。

    adb shell

    查看进程号---ps

    ps|grep monkey

    查看进程号--top

    top | grep “monkey” 

    kill PID

    查看包名和activity名

    查看app包名

    adb shell pm list package -3

    查看activity名

    adb shell dumpsys activity top | find "ACTIVITY"
    adb shell dumpsys activity|findstr "mFoc"
    adb shell monkey -p 包名 -v -v -v 1

    手机客户端测试

    ADB 命令自动化测试

    1. $echo off
    2. rem 注释shell脚本
    3. adb shell pm list package -3
    4. rem adb shell dumpsys activity|findstr "mfocus"
    5. rem 这个命令我在真机获取不到包名
    6. adb shell dumpsys activity top | find "ACTIVITY"
    7. rem 启动王者荣耀TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 18404
    8. adb shell am start -W -S com.tencent.tmgp.sgame/.SGameActivity
    9. rem 等待20
    10. ping 127.0.0.1 -n 38
    11. rem 点击同意,再点击公告,再点击QQ登录
    12. adb shell input tap 1200 826
    13. ping 127.0.0.1 -n 2
    14. adb shell input tap 1810 210
    15. ping 127.0.0.1 -n 2
    16. adb shell input tap 1228 864
    17. ping 127.0.0.1 -n 16
    18. adb shell input tap 774 482
    19. adb shell input text Y
    20. ping 127.0.0.1 -n 2
    21. adb shell input keyevent 67
    22. ping 127.0.0.1 -n 6
    23. adb shell input tap 555 490
    24. adb shell input text "Ygh"
    25. adb shell input keyevent 5555
    26. rem 密码 字符 & 不会输入 同时按住shift+7
    27. adb shell input keyevent 59 3
    28. adb shell input keyevent 14 3
    29. adb shell input text 897564
    30. ping 127.0.0.1 -n 4

    appium自动化测

    Native App:原生APP,基于手机操作系统开发。

    Web App:网页APP,基于H5实现,可通过浏览器访问。

    Hybrid App:混合型APP,结合原生和网页应用。

    问题

    D:\\software_customization\\android-sdk-windows\\platform-tools\\adb.exe -P 5037 -s d7ac6a65 shell am start -W -n com.tencent.mobileqq/.activity.LoginActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000

    把那串报错内容复制到CMD 中 

    这样就很清楚:遇到这种错误是因为手机或者模拟器上没有打开某个权限,需要手动打开权限。 

    cmd启动命令appium

    npm(nodeJs package manager)是用于安装node应用的包管理工具,用它来安装appium命令行版。

    1、检查nodejs和npm环境;

    node -v
    npm -v

     

    2、检查cnpm安装路径。安装国内cnpm,防止国外无法安装。 使用命令如下:

    npm config ls

    可以通过 npm config set prefix="你想要的安装目录" 来修改默认安装位置,但不建议 

    3、安装启动appium 命令(可能需要翻墙才能下载哟) 

    npm install appium -g

     4、检查是否可以正常启动

    appium

    ‘appium'不是内部或外部命令,也不是可运行的程序或批处理文件。将npm配置到path环境变量

     

    selenium和appium 定位方式

    ACCESSIBILITY_ID:对应为 :content-desc

    ID:对应为 :resource-id

    XPATH:对应为 :xpath

    1. driver.find_element(AppiumBy.XPATH,"XPATH")
    2. driver.find_element(AppiumBy.ID,"ID")
    3. driver.find_element(AppiumBy.ACCESSIBILITY_ID,"ACCESSIBILITY_ID")

    录制脚本

  • 相关阅读:
    More Effective C++学习笔记(6)
    1024程序员节,给大家送份福利
    【Python-pyecharts】全国数据分析岗招聘信息可视化
    web前端网页设计期末课程大作业:关于城市旅游的HTML网页设计 ——北京
    黑豹程序员-架构师学习路线图-百科:MVC的演变终点SpringMVC
    RabbitMQ 集群 - 普通集群、镜像集群、仲裁队列
    中国钨粉行业市场研究与投资预测报告(2022版)
    虚假新闻检测概述
    微信小程序开发笔记
    WebWall-04.CSRF(跨站请求伪造)
  • 原文地址:https://blog.csdn.net/qq_36675754/article/details/126474325