ADB

  Android Debug Bridge(安卓调试桥) tools。它就是一个命令行窗口,用于通过电脑端与模拟器或者真实设备交互。在某些特殊的情况下进入不了系统,adb就派上用场啦!

  前提条件:开启调试模式

  adb 使用的端口号:5037

  安装adb:brew cask install android-platform-tools

连接

  adb devices , 获取设备列表及设备状态

  nox_adb.exe connect 127.0.0.1:6201

  adb start-server

  adb logcat

  adb shell

  adb shell getprop ro.build.version.release

  adb push C:\Users\win\Desktop\xx.png /sdcard

  adb pull /sdcard/xx.png C:\Users\win\Desktop

  adb shell dumpsys window windows | grep mFocusedApp’(windows为findstr)

  adb install 路径/xxx.apk

  adb uninstall app

  adb shell am start -W 包名/.启动名

  adb get-state , 获取设备的状态

  adb kill-server , adb start-server , 结束 adb 服务, 启动 adb 服务,通常两个命令一起用

  adb shell dumpsys window | grep mCurrentFocus,获取当前程序的activity(把里面的信息复制出来用于下面)

  adb shell am start -n com.tencent.mobileqq/com.tencent.mobileqq.activity.SplashActivity,启动qq

  adb shell monkey -p com.android.settings 1000,压测

  adb connect 127.0.0.1:62001出现sucessully

  adb shell,输入monkey,exit;

  adb shell monkey 5;这就是压力测试;

  adb shell monkey -v 5;接日志结果信息,两个-V时间,三个-v安装;5个事件太小没反应一般 几w起步;有这么多请求就是压力。事件数根据业务场景填的或者页面,来确定使用个数是多少。

  日志分流输出:正常和异常分别输出。一句命令的事情。

  adb shell monkey -p 包名 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --pct-touch 40 -s 11 -v -v -v -p 100

  -s:记录上一次操作的事件的复现;

  adb shell monkey -s 123 20  表示发送20个事件,有失败不要紧。

想慢一点加时间间隔--throttle 3000(毫秒)adb shell monkey -v --throtle 3000 5。

11种事件参数

  --pct-touch 40 5  触摸事件,不设置则为随机;

  --pct-motion  上下手滑动事件;

  --pct-pinchzoom

  --Pct-rotation

  --pct-nav

  --pct-majornav

  --pct-syskeys

  --pct-appswitch

  --pct-flip

  --pct-anyevent

针对某一个指定APP测试

  adb shell monkey -p <allowed-package-name><event> count>

  <allowesd-package-nuaIne>app的包名

  例: adb shell monkey -v -p com.taLl.kaoyan 500

  adb shell monkey -p 包名1 -p 包名2 事件数

  例: adlb shell monkey -v -p com.al.kaoyan -p con.wanloujia.phoenix2 500

  获取包名:aapt dump badging App的存放地址

测试实践

  如:测试某app,测试希望通过Monkey来模拟用户的随机操作,检查被测应用是否会出现异常(应用崩溃或者无响应)。

  adb shell monkey -p com.tal.linshoutong --pct-touch 40 --pct-motion 25 --pct-appswitch 10 --pct-rotation 5 -s1666 --throttle 400 --ignore-crashes --ignore-timeouts -v -v 200

手势

  %表示手势的事件,

  若崩溃了,monkey会停止运行。

  --ignore-crashes  崩溃后继续发送事件;

  --ignore-timeouts  超时运行;

  Monkey本身可以指定一个包来运行,如果是性能测试就本身是针对一个APP来走的。

adb简记的更多相关文章

  1. 通过adb方式给安卓手机截图的cmd批处理文件

    @echo off rem  通过adb方式截图rem  需要安装adb ,一般安装了android sdk 默认带了adb ,路径为sdk目录的android-sdk\platform-toolsr ...

  2. Android 工具-adb

    Android 工具-adb 版权声明:本文为博主原创文章,未经博主允许不得转载. Android 开发中, adb 是开发者经常使用的工具,是 Android 开发者必须掌握的. Android D ...

  3. RangePartitioner 实现简记

    摘要: 1.背景 2.rangeBounds 上边界数组源码走读 3.RangePartitioner的sketch 源码走读 4.determineBounds 源码走读 5.关于RangePart ...

  4. 安卓虚拟机adb shell sqlite3数据库

    adb shell 连接: //http://www.cnblogs.com/xiaobo-Linux/ Android把数据都存放在data/data目录下. 我们使用cd命令转到data/data ...

  5. adb devices 偵測不到 手機

    現象: system 有偵測到 mobile phone, xxx@xxx-ThinkPad-T460p:~/.android$ lsusb Bus Device : ID 1d6b: Linux F ...

  6. Android之什么是Activity和常用的ADB命令以及Android项目结构的认识

    总结一下之前学习Android的一些内容 一:  Android常用的ADB命令(adb android调试桥)      1.adb devices   查看模拟器设备并重新连接. 2.adb ki ...

  7. 四.Android adb命令(持续更新...)

    1.安装:甭管从哪里下载下来的apk,放在指定的目录下,不一定非要是sdk的目录下:adb install "d:\hxcjaz.apk"(指定的一个目录)2.卸载:adb uni ...

  8. linux安装adb

    本文只针对centOS6.8,其他版本未测试 1.下载adb包 下载android sdk for linux(http://tools.android-studio.org/index.php/sd ...

  9. adb工具获取appPackage和appActivity

    1,手机连接电脑,打开手机调试功能,并运行待测试APP,终端执行: adb shell 2,接着,执行: dumpsys window windows | grep -E 'mFocusedApp' ...

  10. 魅族mx4 pro连电脑,adb无法获取devices信息解决

    根据 flyme 的文档: K:\MX4 USB Reference Manual\简体\MX4_ADB_参考说明书.txt 操作如下: 二.Windows XP中文环境1.  建立或修改C:\Doc ...

随机推荐

  1. OpenAI 推出超神 ChatGPT 注册教程来了

    前几天,OpenAI 推出超神 ChatGPT,非常火爆.但是呢,因为不可抗力原因,大部分人无法体验到.这里我分享一下注册的攻略. 准备 首先能能访问 Google(前置条件,不能明确说,懂得都懂) ...

  2. node-sass报错(Node Sass could not find a binding for your current environment)

    解决方案:参考 https://stackoverflow.com/questions/37986800/node-sass-couldnt-find-a-binding-for-your-curre ...

  3. windows简单使用Jenkins遇到的一些坑

    简言: 闲来没事干,最近身边的小伙伴都在谈论CI/CD.自动化等等,耳朵都磨出茧了.这不闲着研究下jenkins.下面将自己遇到的一些坑分享出来. 首先介绍下Jenkins.Jenkins 是一个基于 ...

  4. json 提取器将提取的所有id拼接成字符串

    1.添加json提取器,提取所有的id 2.添加调试后置处理器查看buildid_ALL值以及类型 当需要将提取的id拼接成字符串时,此时使用json提取器并勾选Compute concatenati ...

  5. 1、Java数据类型

    1.基本数据类型的变量: /** * 1.基本数据类型的变量: * * 1).整数类型:byte(1字节=8bit),short(2字节),int(4字节),long(8字节) * * 2).浮点数类 ...

  6. 2022USACO-DEC-Silver

    题目链接 T1.Barn Tree T2.Circular Barn T3.Range Reconstruction T1 下面均以\(1\)为根来进行分析. 算法思路: 首先,定义一个数组dis表示 ...

  7. 数位排序【第十三届蓝桥杯省赛C++C组】

    数位排序 小蓝对一个数的数位之和很感兴趣,今天他要按照数位之和给数排序. 当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面. 例如,\(2022\) 排在 \( ...

  8. P7368 [USACO05NOV]Asteroids G

    题面 贝茜想在 \(N\times N\) 的网格中驾驶她的宇宙飞船.网格中有 \(K\) 个小行星.要使驾驶过程愉快,就必须把这些小行星全部消除. 贝茜有一个武器,可以以一个单位代价消除一行或一列的 ...

  9. ZROI2

    题解 ZROI2 暑假集训的第二次模拟赛,成绩..更加惨不忍睹.又滑了rk20,(#`-_ゝ-)(sk) 链染色 考场上想出了半正解,思路上期望得分80pts,代码得分0pts,(我这辣鸡代码能力╯︿ ...

  10. 一种面向业务配置基于JSF广播定时生效的工具

    作者:京东物流 王北永 姚再毅 李振 1 背景 目前,ducc实现了实时近乎所有配置动态生效的场景,但是配置是否实时生效,不能直观展示每个机器上jvm内对象对应的参数是否已变更为准确的值,大部分时候需 ...