adb简记
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简记的更多相关文章
- 通过adb方式给安卓手机截图的cmd批处理文件
@echo off rem 通过adb方式截图rem 需要安装adb ,一般安装了android sdk 默认带了adb ,路径为sdk目录的android-sdk\platform-toolsr ...
- Android 工具-adb
Android 工具-adb 版权声明:本文为博主原创文章,未经博主允许不得转载. Android 开发中, adb 是开发者经常使用的工具,是 Android 开发者必须掌握的. Android D ...
- RangePartitioner 实现简记
摘要: 1.背景 2.rangeBounds 上边界数组源码走读 3.RangePartitioner的sketch 源码走读 4.determineBounds 源码走读 5.关于RangePart ...
- 安卓虚拟机adb shell sqlite3数据库
adb shell 连接: //http://www.cnblogs.com/xiaobo-Linux/ Android把数据都存放在data/data目录下. 我们使用cd命令转到data/data ...
- adb devices 偵測不到 手機
現象: system 有偵測到 mobile phone, xxx@xxx-ThinkPad-T460p:~/.android$ lsusb Bus Device : ID 1d6b: Linux F ...
- Android之什么是Activity和常用的ADB命令以及Android项目结构的认识
总结一下之前学习Android的一些内容 一: Android常用的ADB命令(adb android调试桥) 1.adb devices 查看模拟器设备并重新连接. 2.adb ki ...
- 四.Android adb命令(持续更新...)
1.安装:甭管从哪里下载下来的apk,放在指定的目录下,不一定非要是sdk的目录下:adb install "d:\hxcjaz.apk"(指定的一个目录)2.卸载:adb uni ...
- linux安装adb
本文只针对centOS6.8,其他版本未测试 1.下载adb包 下载android sdk for linux(http://tools.android-studio.org/index.php/sd ...
- adb工具获取appPackage和appActivity
1,手机连接电脑,打开手机调试功能,并运行待测试APP,终端执行: adb shell 2,接着,执行: dumpsys window windows | grep -E 'mFocusedApp' ...
- 魅族mx4 pro连电脑,adb无法获取devices信息解决
根据 flyme 的文档: K:\MX4 USB Reference Manual\简体\MX4_ADB_参考说明书.txt 操作如下: 二.Windows XP中文环境1. 建立或修改C:\Doc ...
随机推荐
- 全网最全的linux上docker安装oracle的详细文档,遇到了n个问题,查了几十篇文章,最终汇总版,再有解决不了的,私聊我,我帮你解决
目录 全网最全的linux上docker安装oracle的详细文档,遇到了n个问题,查了几十篇文章,最终汇总版,再有解决不了的,私聊我,我帮你解决 1. 拉取阿里镜像oracle 2. 创建初始化数据 ...
- js迭代循环
一.for loop for (let i = 0; i < products.length; i++) { console.log(products[i]); } 支持循环中断,可以用brea ...
- Pytorch 基本操作
Pytorch 基础操作 主要是在读深度学习入门之PyTorch这本书记的笔记.强烈推荐这本书 1. 常用类numpy操作 torch.Tensor(numpy_tensor) torch.from_ ...
- 百倍加速IO读写!快使用Parquet和Feather格式!⛵
作者:韩信子@ShowMeAI 数据分析实战系列:https://www.showmeai.tech/tutorials/40 本文地址:https://www.showmeai.tech/artic ...
- input限制只能输入汉字
<el-form class="det_foot" :model="form" :rules="rules" ref="fo ...
- 3、swagger-ui导出word接口文档
参考 1.修改swagger2word项目的 application.yml 文件的 swagger.url 为Swagger Json资源的url地址(网址+端口): 例:swagger.url: ...
- LFU 的设计与实现
LFU 的设计与实现 作者:Grey 原文地址: 博客园:LFU 的设计与实现 CSDN:LFU 的设计与实现 题目描述 LFU(least frequently used).即最不经常使用页置换算法 ...
- S2-017 CVE-2013-2248
漏洞名称 Apache Struts 多个开放重定向漏洞 (CVE-2013-2248) s2-017 利用条件 Struts 2.0.0 - Struts 2.3.15 漏洞原理 通过操作前缀为&q ...
- AspNetCore管道
title: Asp.Net Core底层源码剖析(一)中间件/管道 categories: 后端 tags: - .NET 当我们像下面这样添加一个管道时发生了什么? app.Use(async ( ...
- [Leetcode]设计循环队列
题目 代码 class MyCircularQueue { public: /** Initialize your data structure here. Set the size of the ...