美文网首页
adb近期使用总结

adb近期使用总结

作者: dittoyy3991 | 来源:发表于2018-06-05 17:42 被阅读68次

    手机按键:menu、back、home、search

    用户体验测试
    不要放弃小白用户
    不要放弃低配机型
    

    ==好的产品不是体现在用户多,赚钱多,而是用户体验好,有粘性

    测试大纲
    1.UI测试
    2.功能测试
    3.压力
    4.兼容测试
    5.稳定性测试
    6.用户体验
    7.性能测试
    8.安全测试
    9.安装卸载
    10.后台统计
    11.增值业务
    12.更新测试
    13.权限整理
    


    ==monkey命令
    adb shell monkey packagexx --ignore-timeouts 1000
    在monkey测试中常用的命令组合有:
    1 monkey -p com.yourpackage -v 500//简单的输出测试的信息。
    2 monkey -p com.yourpackage -v -v  500 //以深度为二级输出测试信息。
    3 monkey -p com.yourpackage -s 数字 -v 500//为随机数的事件序列定一个值,若出现问题下次可以重复同样的系列进行排错。
    4 monkey -p com.yourpackage -v --throttle 3000 500//为每一次执行一次有效的事件后休眠3000毫秒。
    
    monkey的log
    Monkey finished这个字段表明本次的Monkey没有异常,测试通过。
    CRASH表明有进程出现问题,测试不通过。
    ANR测试对象出现了无响应的现象,因此测试不通过。--throttle <毫秒>值建议为500
    (1)crash 闪退;
    (2)exception 异常;
    (3)force closed 强制退出
    (4)anr (application no response)程序无响应
    

    ==adb命令
    #系统日志输出
    adb logcat -v threadtime > androd.log
    
    #检查package
    aapt dump badging packagexx
    adb shell "logcat | grep "Displayed" "  点击需要测试的应用就可以看到包名
    
    #删除系统应用 
    先将设备改为可读可写adb remount
    在通过adb shell 进入到/system/app rm掉
    
    #文件双向传递
    adb pull /sdcard/sss.png d:test
    adb push d:test  /sdcard/sss.png
    
    #获取ui控件元素
    adb shell uiautomator dump   
    UI hierchary dumped to: /storage/emulated/legacy/window_dump.xml
    
    #列出设备上输入法
    adb shell ime list -s 
    com.google.android.inputmethod.pinyin/.PinyinIME
    
    #选择输入法
    adb shell ime set com.xxx
    
    #分辨率
    adb shell wm size
    
    #录mp4
    adb shell screenrecord sdcard/record.mp4
    执行命令后操作手机,ctrl + c 结束录制,录制结果保存至 sdcard
    
    #截图
    adb shell screencap -p /sdcard/screen.png
    
    #获取设备分辨率
    adb shell wm size Physical size: 1080x1920 
    
    #拨打电话
    adb shell am start -a android.intent.action.CALL -d tel:10086 Starting: Intent { act=android.intent.action.CALL dat=tel:xxxxx }
    
    #键鼠模式模拟输入
    adb shell input tap 500 500
    adb shell input swipe 900 500 100 500
    adb shell input keyevent KEYCODE_HOME
    adb shell input text test123456
    
    #结束与启用服务
    am force-stop , 后跟包名,结束应用
    am startservice , 启动一个服务
    
    #pm列出已装应用
    adb shell pm list package
    -s:列出系统应用
    adb shell pm list package -s
    -3:列出第三方应用
    adb shell pm list package -3
    -f:列出应用包名及对应的apk名及存放位置
    adb shell pm list package -f
    -i:列出应用包名及其安装来源
    
    #查看指定应用的dump信息?
    adb shell pm dump com.xx.xx
    #pm clear , 清除应用数据
    
    #安装卸载 -r覆盖安装哈
    目标 apk 存放于 PC 端,请用 adb install 安装
    目标 apk 存放于 Android 设备上,请用 pm install 安装
    pm uninstall , 卸载应用,同 adb uninstall , 后面跟的参数都是应用的包名
    pm set-install-location , pm get-install-location , 设置应用安装位置,获取应用安装位置
    [0/auto]:默认为自动
    [1/internal]:默认为安装在手机内部
    [2/external]:默认安装在外部存储
    
    
    #am之类的
    §   am force-stop , 后跟包名,结束应用
    §   am startservice , 启动一个服务
    §   am broadcast , 发送一个广播
    §   am monitor , 监控 crash 与 ANR
    
    #am启动应用测时间
    adb shell am start -W com.xx.xx/.MainActivity
    
    #电量消耗信息
    adb shell dumpsys batterystats
    adb shell dumpsys batterystats  com.xx.xx
    
    #记录apk安装路径
    adb shell pm path com.xx.xx
    
    #导出apk到pc
    adb shell pull [apk安装路径] xx.apk
    
    #内存消耗
    adb shell dumpsys meminfo com.xx.xx
    
    #cpu消耗
    adb shell dumpsys cpuinfo com.xx.xx
    
    #性能用到的
    #top==adb shell 下
    top -s cpu -m 5
    cpu占用最高的5个进程
    top -m 10|grep xx
    
    adb shell cat /proc/cpuinfo
    adb shell cat /proc/meminfo
    adb shell dumpsys meminfo $pid
    adb shell dumpsys meminfo $packageName
    
    #offline时候解决办法
    adb kill-server/start-server
    重启手机=开发者模式
    查看端口是否被占用很有可能是360
    
    ==手机系统系列
    #查看全部属性
    C:\Users\xx>adb shell getprop > d:/prot.txt
    
    #查看机器的序列号
    C:\Users\zejun>adb shell getprop ro.serialno
    
    #查看机器的CID号
    C:\Users\zejun>adb shell getprop ro.carrier
    
    #查看SPL(Hboot)版本号
    C:\Users\zejun>adb shell getprop ro.bootloader
    
    #重启手机
    adb reboot
    
    #重启手机到recovery界面
    adb reboot recovery
    
    #重启手机到bootloader界面
    adb reboot bootloader
    
    adb shell service list
    
    #扒拉日志到本地
    adb pull /sdcard/log/ D:/log1/
    
    #查看bug报告
    adb bugreport
    
    #在logogcat 里面打印你设定的信息
    adb shell log -p d -t xx "test adb shell"
    -p:优先级,-t:tag,标签,后面加上 message
    
    #
    adb logcat -v time -s xx
    
    #adb shell getprop ro.build.version.sdk获取设备的 sdk 版本、设备参数键值对
    
    #linux命令依旧适用
    cat、cd、chmod、cp、date、df、du、grep、kill、ln、ls、lsof、netstat、ping、ps、rm、rmdir、top、touch、重定向符号 ">" ">>"、管道 "|"
    
    #文件写入
    运行写入pc
    adb shell monkey -p com.android.settings 5000 > d:\monkey.log
    运行写入安卓机加引号
    adb shell "monkey -p com.android.settings 5000 > sdcard/monkey.log"
    
    

    #几个ss内存的区别
    VSS   Virtual Set Size  虚拟耗用内存(包含共享库占用的内存)
    RSS   Resident Set Size 实际使用物理内存(包含共享库占用的内存)存在重复计算
    Pss(proportional set size)是占用的私有内存加上平均分配的共享内存。
    Uss(unique set size)是私有内存,如果应用程序被终止了,这部分内存的将被释放。
    
    #查看内存泄漏
    DDMS
    Update Heap
    GC查看一下Heap的使用情况
    Heap抓出来分析Dump HPROF file
    MAT内存分析公共 memory analysis
    
    a.bat
    set process=com.xx.xx             #需要测试的进程名
    @adb shell dumpsys meminfo %process% | findstr "Pss"        
    :m
    @adb shell dumpsys meminfo %process% | findstr "TOTAL"  
    @ping -n 5 127.1>nul
    @goto m
    
    adb shell am dumpheap com.xx.xx /sdcard/test.hprof
    执行失败
    
    =-=mat分析未成功?
    下次再试
    

    相关文章

      网友评论

          本文标题:adb近期使用总结

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