用adb命令给APP做压力测试,有什么不同?

压力测试

app做压力测试目的是模拟用户在使用软件时随意向软件发出指令,例如操作app的点击,滑动,返回等一系列随机事件,来检测app的承受能力

第一步:手机安装包需要待测的app

第二步:输入adb  start-server开启adb服务

第三步:输入adb  devices测试手机连接是否正常

第四步:进入安卓系统,获取应用名

adb  shell  进入安卓系统   exit退出

进入之后

Pm  list  packages   获取应用包名

第五步;获取第三方安装包名

Pm  list  packages  -3

第六步:对app进行压力测试

monkey -p  APP包名  次数

就是调用monkey命令对安卓APP进行压力测试。

例如:monkey -p com.tencent.mobileqq 100

即对包名为com.tencent.mobileqq的App发送100次随机事件的命令,发送完成后手机会自动运行该App并进行一系列随机操作。

第二种方法,运行需要获取的软件(获取活动栈和包名方法)

Cmd输入命令(运行获取的软件)

adb shell dumpsys window | findstr mCurrentFocus   

throttle参数:指定事件之间的间隔

adb抓取日志

第一步: 首先使用adb命令将手机与电脑连接

输入命令   adb    devices

如下图证明连接成功

第二步: 抓取日志前先清除手机上的旧日志

输入命令   adb  logcat   -c  

第三步: 开始抓取日志(出现问题的日志)

输入命令  adb  logcat  -v  time  > E:\a.txt

同时开始操作出现问题APP的某个功能,方便记录日志,在操作完成后开始输入结束命令

结束抓取日志的命令:Ctrl   C

命令解释:adb  logcat  -v  time 开始抓取日志

E:\a.txt  存放的位置以及日志的命名   

第四步:结束需要抓取日志的命令(抓取的只是出现bug的部分,正常的部分不需要)

结束当前抓取日志的命令为:Ctrl  C      

第五步日志分析:日志文件格式如下图:

各日志字母代表含义  V:明细、 D:调试、I:信息、W:警告 、E:错误、F:严重错误、S:无记载   

定位有问题的日志方法

在文件中找到保存的日志文件,在编辑功能中找到搜索功能按键,在搜索功能中输入关键字:可以根据现象来搜索关键字

  1 例如:打开软件出现崩溃现象,就是严重错误,搜索关键字 fatal

  2 例如:打开软件该出现内容没有显示,就是错误,搜索关键字error

  3 在抓取的日志中基本搜索关键字error,将出现的日志截图即刻

adb命令

adb组成:

1 adb服务器、2 adb客户端、3 adb后台程序,守护程序   

adb命令:

1 打开adb服务 adb   start-server

2 关闭adb服务 adb  kill-server

3 查询已经连接的设备  adb  devices

第一个是手机的序列号

第二个表示状态 device  已经连接

Offine 断开连接

Unauthorization 已经连接成功但是手机不信任此电脑

4 进入安卓系统  adb  shell

5 退出安卓系统  exit  

6 获取手机上有多少个应用名(报名)

adb  shell  pm  list  packages

进入系统内 pm  list  packages

7 获取手机上所有第三方安装包名

adb shell  pm   list  packages  -3  

8 获取手机上某个应用的activity(中文名:活动栈)

adb shell monkey -p 软件包名 -v -v -v 10 | grep "cmp="

手机连接改为把grep   findstr

.activity.SplashActivity 为活动名

第二种方法,运行需要获取的软件

Cmd输入命令

adb shell dumpsys window | findstr mCurrentFocus 

9 查看手机日志  adb  logcat(退出adb查看)       

 -c  清除日志

将日志添加到文件中  adb  logcat >> a.txt

看看路径,在文件夹中查找就可以看到

10 将电脑上的文件发送到手机上

Adb  push 电脑上的文件名位置  手机存放位置 

11 将电脑上的文件发送到手机

和10 方法一样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/64786.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2023年西南大学数学建模C题天气预报解题全过程文档及程序

2023年西南大学数学建模 C题 天气预报 原题再现: 天气现象与人类的生产生活、社会经济、军事活动等方方面面都密切相关,大到国家,小到个人,都受到极端天气的影响。2022年6月,全球陆地地区出现了自1850年代末人类有系…

Android 10 Launcher3 删除谷歌搜索

命令行获取页面 手机处于launcher首页 adb shell dumpsys window | findstr mCurrentFocus 输出 mCurrentFocusWindow{9afb34d u0 com.android.launcher3/com.android.launcher3.Launcher} 找到源码路径 packages/apps/Launcher3/ Android10源码 搜索控件 grep -r -n Apps…

LabVIEW机械故障诊断中的传感器选择

在机械设备故障诊断中,传感器是关键设备,用于采集设备运行状态的各种数据。常见的传感器类型和选择方法如下: 1. 振动传感器 用于检测设备运行中的振动特征,常见于旋转机械和轴承故障诊断。 加速度传感器:检测高频振…

JVM和数据库面试知识点

JVM内存结构 主要有几部分:堆、栈、方法区和程序计数器 堆是JVM中最大的一块内存区域,用于存储对象实例,一般通过new创建的对象都存放在堆中。堆被所有的线程共享,但是它的访问时线程不安全的,通常通过锁的机制来保证线…

电子发票汇总改名,批量处理电子发票问题

今天给大家推荐一个财务方面工作的软件。可以帮你解决很多财务。发票方面的问题。 电子发票汇总改名 批量处理电子发票问题 这个软件安装之后。会在桌面上分成三个小软件,分别是修改单位信息、自定义命名规则和电子发票汇总改名。 你可以在这个软件里提取PDF或者of…

用 Python 从零开始构建 LLaMA 3

文章结尾有最新热度的文章,感兴趣的可以去看看。 本文是经过严格查阅相关权威文献和资料,形成的专业的可靠的内容。全文数据都有据可依,可回溯。特别申明:数据和资料已获得授权。本文内容,不涉及任何偏颇观点,用中立态度客观事实描述事情本身 文章有点长(字),期望您能坚…

移植 OLLVM 到 LLVM18,修复控制流平坦化报错

版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/ 前言 把 OLLVM 移植到 LLVM18 后,发现 -fla(控制流平坦化)并不能正常使用。 关于移植过程可以参考这篇文章 【移植 OLLVM…

MyBatis通过注解配置执行SQL语句原理源码分析

文章目录 前置准备流程简要分析配置文件解析加载 Mapper 接口MapperAnnotationBuilder解析接口方法注解parseStatement 方法详解MapperBuilderAssistant 前置准备 创建一个mybatis-config.xml文件&#xff0c;配置mapper接口 <mappers><!--注解配置--><mapper…

入侵他人电脑,实现远程控制(待补充)

待补充 在获取他人无线网网络密码后&#xff0c;进一步的操作是实现入侵他人电脑&#xff0c;这一步需要获取对方的IP地址并需要制作自己的代码工具自动化的开启或者打开对方的远程访问权限。 1、获取IP地址&#xff08;通过伪造的网页、伪造的Windows窗口、hook&#xff0c;信…

mac 安装graalvm

Download GraalVM 上面链接选择jdk的版本 以及系统的环境下载graalvm的tar包 解压tar包 tar -xzf graalvm-jdk-<version>_macos-<architecture>.tar.gz 移入java的文件夹目录 sudo mv graalvm-jdk-<version> /Library/Java/JavaVirtualMachines 设置环境变…

[SZ901]JTAG高速下载设置(53Mhz)

SZ901最高支持JTAG 53MHz的时钟频率&#xff0c;下载bit文件和固化程序的速度提升非常明显。 首先设置参数 1&#xff0c;将JTAG0 分频系数修改为3 2&#xff0c;设置参数&#xff0c;更新参数。&#xff08;完成&#xff09; 打开VIVADO VIVADO 正常识别FPGA&#xff0c;速…

蓝桥杯刷题——day8

蓝桥杯刷题——day8 题目一题干解题思路代码 题目二题干解题思路代码 题目一 题干 N 架飞机准备降落到某个只有一条跑道的机场。其中第i架飞机在 Ti时刻到达机场上空&#xff0c;到达时它的剩余油料还可以继续盘旋 Di个单位时间&#xff0c;即它最早可以于 Ti时刻开始降落&am…

深度科普文:细数倾斜摄影数据的缺点

1. 引言 写这篇文章的起因是最近遇到一个使用倾斜摄影数据应标的三维可视化项目&#xff0c;业主认为倾斜摄影数据加载很卡&#xff0c;要求能浏览场景的时候能立刻显示出当前的场景最精细的模型&#xff0c;如下图1所示。其实这个问题遇到的次数还真不少&#xff0c;作为乙方…

React:闭包陷阱产生和解决

在 React 中&#xff0c;闭包陷阱是一个常见的问题&#xff0c;尤其是在处理异步操作、事件处理器、或是定时器时。理解闭包的工作原理以及它在 React 中如何与状态和渲染交互&#xff0c;可以帮助你避免陷入一些常见的错误。 一、闭包陷阱的产生 1、什么是闭包陷阱&#xff1…

【开源免费】基于SpringBoot+Vue.JS在线宠物用品交易网站(JAVA毕业设计)

本文项目编号 T 092 &#xff0c;文末自助获取源码 \color{red}{T092&#xff0c;文末自助获取源码} T092&#xff0c;文末自助获取源码 目录 一、系统介绍二、数据库设计三、配套教程3.1 启动教程3.2 讲解视频3.3 二次开发教程 四、功能截图五、文案资料5.1 选题背景5.2 国内…

【Git 常用操作:pull push】

Git 基本概念 Git 是一个先进的开源的分布式版本控制系统&#xff0c;常用于管理工作内容、项目代码等功能。 Git 工作流程 图片来源&#xff1a;https://www.runoob.com/git/git-basic-operations.html 说明&#xff1a; workspace&#xff1a;工作区staging area&#xff…

shell脚本的循环-----while和for循环

一、while 1.格式 while 条件表达式; do 命令 done 2.案例 &#xff1a; ping测试子网段的主机网段由用户输入&#xff0c;例如用户输入192.168.101 &#xff0c;则ping192.168.101.125 — 192.101.131 UP&#xff1a; /tmp/host_up.txt Down: /tmp/host_down.txt &#…

内容与资讯API优质清单

作为开发者&#xff0c;拥有一套API合集是必不可少的。这个开发者必备的API合集汇集了各种实用的API资源&#xff0c;为你的开发工作提供了强大的支持&#xff01;无论你是在构建网站、开发应用还是进行数据分析&#xff0c;这个合集都能满足你的需求。你可以通过这些免费API获…

maven-resources-production:ratel-fast: java.lang.IndexOutOfBoundsException

Maven生产环境中遇到java.lang.IndexOutOfBoundsException的问题&#xff0c;尝试了重启电脑、重启IDEA等常规方法无效&#xff0c;最终通过直接重建工程解决了问题。 Rebuild Project 再启动OK

[数据结构] 链表

目录 1.链表的基本概念 2.链表的实现 -- 节点的构造和链接 节点如何构造? 如何将链表关联起来? 3.链表的方法(功能) 1).display() -- 链表的遍历 2).size() -- 求链表的长度 3).addFirst(int val) -- 头插法 4).addLast(int val) -- 尾插法 5).addIndex -- 在任意位置…