App测试收集总结

Monkey

monkey是安卓的命令行工具,可以运行在虚拟机或者实际设备中。
monkey的目的就是为了测试app的稳定性,看App是否会崩溃
monkey的特点:只能对程序包进行测试,无法对源码进行测试;moneky的事件数据流是随机的,无法自定义;可以对monkey的测试对象,事件类型,频率,数量等进行自定义。

App测试环境搭建:

  1. 安装JDK,安卓SDK,配置Java和Android环境
  2. 安装虚拟机或者准备真实安卓设备
  3. 将待测试的程序包安装到虚拟机或者设备上
  4. 通过adb devices连接设备或者虚拟机
  5. 打开安装包
  6. 通过adb shell monkey命令对app进行测试

App测试monkey命令

安装应用 adb install
对设备中的所有App进行随机测试:

adb shell monkey 100 执行monkey测试100次

指定一个或者多个包进行测试:

adb shell monkey -p [package] 10 对指定package进行测试

package包名的查看:

adb logcat|findstr Displayed

随机数种子:seed值相同的话,执行的事件序列也是一样的

adb shell monkey -p [package] -s [seed值] 100

用户延迟操作: 300执行一个操作的时间 100是执行事件次数,不指定300这个操作时间的话,monkey就会尽快的去执行操作

adb shell monkey -p [package] --throttle 300 100

设置触摸事件的百分比: - - pct-touch [百分比数值] 剩下的50%由monkey随机设置事件

adb shell monkey -p [package] - - pct-touch 50 -v 100 

设置手势操作的百分比

adb shell monkey -p [package] - - pct-motion 50 -v 100 

设置 忽略崩溃和忽略超时

adb shell monkey -p [package] --ignore-crashes --ignore-timeouts 100

指定事务的百分比:触摸和移动各50%

adb shell monkey -p [package] -- pct-motion 50 --pct-motion 50 -v 100

App测试日志定位

  • 日志位置:adb shell monkey 100 >路径
  • 查看日志关键字
    A、崩溃记录查找”CRASH”;
    B、无响应记录查找”ANR”;
    C、内存泄露问题搜索"GC"(需进一步分析);
    D、异常问题搜索“Exception”;
  • 日志详细级别:
    Level 0: adb shell monkey -p 包名 -v 30 //仅提供启动提示、测试完成和最终结果等少量信息;
    Level 1:adb shell monkey -p 包名 -v -v 30 // 提供较为详细的日志,包括每个发送到Activity的事件信息;
    Level 2:adb shell monkey -p 包名 -v -v -v 30 // 最详细的日志,包括了测试中选中/未选中的Activity信息
  • 抓取日志 adb logcat (-v time 按照时间打印日志)
    开始抓取日志,输入如下命令把日志写入到文件中:adb logcat -v time > D:\Logcat\logcat.log
  • 日志级别的过滤
    查看10条级别为错误(Error)的日志 adb logcat 10 *:E > D:\Logcat\logcat.log
    • V 详细verbose级别
    • D debug级别
    • I info级别
    • W warning级别
    • E error级别
    • F fatal 严重级别
    • S 无记载

logcat

logcat是安卓的命令行工具用于抓取日志。
用法 adb logcat
shell 用法 logcat

logcat 的缓冲区

1)Radio:输出通信系统的log
2)System:输出系统组件的log
3)Event:输出event模块的log
4)Main:所有java层的log,遗迹不属于上面3层的log
获取缓冲区 adb logcat -b radio

logcat的tag和优先级

//过滤TAG为ActivityManager输出级别大于I的日志与TAG为MyApp输出级别大于D的日志
adb logcat ActivityManager:I My App:D *:S

命令参数

//将缓冲区的log打印到屏幕并退出
adb logcat -d
//清除缓冲区log(testCase运行前可以先清除一下)
adb logcat -c
//打印缓冲区大小并退出
adb logcat -g
//输出log
adb logcat -f /data/local/tmp/log.txt -n 10 -r 1

格式化输出

adb logcat -v [输出格式]

brief 显示优先级/标记和过程的PID发出的消息(默认格式)
process 只显示PID
tag 只显示优先级/标记
raw 显示原始的日志消息,没有其他元数据字段
time 调用显示日期、时间、优先级/标签和过程的PID发出消息
threadtime 调用显示日期、时间、优先级、标签遗迹PID TID线程发出的消息
long 显示所有元数据字段与空白行和单独的消息


内容收集自网络,如果侵权,请联系我删除

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

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

相关文章

接口自动化测试利器,使用Rest Assured进行REST API测试

我们在做接口测试时,一般在代码中会使用HttpClient,但是HttpClient相对来讲还是比较麻烦的,代码量也相对较多,对于新手而言上手会比较难一点,今天我们来看下另一个接口测试工具包REST Assured REST Assured是一个流行…

麒麟V10安装Redis6.2.6

1、下载redis安装包 Redis各版本下载:https://download.redis.io/releases/ 2、将下载后的.tar.gz压缩包上传到到服务器自定义文件夹下 3、 解压文件 tar -zxvf redis-6.2.6.tar.gzmv redis-6.2.6 redis4、安装redis 在redis文件夹下输入make指令 cd /opt/redi…

MoCo 算法阅读记录

论文地址:🐰 何凯明大神之作,通过无监督对比学习预训练Image Encoder的表征能力。后也被许多VLP算法作为ITC的底层算法来使用。 一方面由于源代码本身并不复杂,但是要求多GPU分布式训练,以及需要下载ImageNet这个大规模…

Ubuntu 20.04.06 PCL C++学习记录(二十一)【切记使用rm * -rf前先确认是否是对应文件夹】

[TOC]PCL中点云分割模块的学习 学习背景 参考书籍:《点云库PCL从入门到精通》以及官方代码PCL官方代码链接,,PCL版本为1.10.0,CMake版本为3.16,测试点云下载地址 学习内容 根据欧几里得距离和需要保持的用户可自定义条件对点进…

在服务器部署MySQL

在服务器opt 新建文件夹 mysql/data,新建文件 mysql/conf.d/my.cnf 其中my.cnf 内容如下 [mysqld] log_timestampsSYSTEM default-time-zone8:00server-id1log-binmysql-binbinlog-do-db mall # 要监听的库binlog_formatROW 配置解读: ① server-id &…

【分析 GClog 的吞吐量和停顿时间、heapdump 内存泄漏分析】

文章目录 🔊博主介绍🥤本文内容GClog分析以优化吞吐量和停顿时间步骤1: 收集GClog步骤2: 分析GClog步骤3: 优化建议步骤4: 实施优化 Heapdump内存泄漏分析步骤1: 获取Heapdump步骤2: 分析Heapdump步骤3: 定位泄漏对象步骤4: 分析泄漏原因步骤5: 修复泄漏…

2024.4.3力扣每日一题——找出克隆二叉树中的相同节点

2024.4.3 题目来源我的题解方法一 深度优先搜索方法二 广度优先遍历 题目来源 力扣每日一题;题序:1379 我的题解 方法一 深度优先搜索 同时对二叉树 original 与 cloned 进行深度优先搜索,如果 original当前搜索的节点的引用等于 target 节…

预训练的启蒙:浅谈BERT、RoBERTa、ALBERT、T5

文章目录 Transformer揭开预训练序幕为什么RNN/LSTM需要从头训练? BERT核心特点预训练任务架构应用和影响 RoBERTa改进点BERT和RoBERTa的MASK策略对比BERT的静态MASK策略RoBERTa的动态MASK策略效果 总结 ALBERT改进点参数共享因式分解嵌入参数和LoRa对比 总结 T5核心…

Electron打包vue+java+nginx 踩坑记录

记录下遇到的问题: ⚠注意:64位系统和32位系统的配置不太一样 1、运行npm run packager失败 原因:在package.json没有对应命令 解决:在package.json 中添加对应命令,其中testApp是你想要的输入的项目名称&#xff0…

编程:不只是工作,是我生活的一部分

开篇 大家好,今天想聊聊我怎么把对编程的爱好变成了自己的饭碗。是的,我现在是个程序员,每天的工作就是和代码打交道。但说实话,这工作对我来说,不只是敲敲键盘那么简单,它是我对生活的一种态度&#xff0…

element用户上传头像组件带大图预览,和删除功能

element 用户上传组件不支持大图预览&#xff0c;拿组件的简单修改一些&#xff0c;发表上来主要是记一下&#xff0c;以后可以用 效果图 <template><div class"flex-img"><div class"el-upload-list el-upload-list--picture-card" v-sh…

word从零基础到高手【办公】

第1课 - word基础操作快速入门第2课 - 让你效率10倍提升的快捷操作第3课 - word排版快速入门第4课 - 排版实战案例讲解第5课 - 搞定论文排版全过程第6课 - 让你的word更强大的神技第7课 - 提高工作效率必备的批量操作 资料截图如下: 发送: "word办公" 获取提取码

动态规划-入门理解

一、什么情况可以使用动态规划 动态规划 最优子结构 重叠子问题 转移方程 最优子结构&#xff1a;保证能从局部解推出全局解&#xff0c;也就是保证能够写出转移方程 重叠子问题&#xff1a;说明暴力解法太耗时&#xff0c;我们可以使用动态规划进行优化 转移方程&#xff…

基于GAN的图像补全实战

数据与代码地址见文末 论文地址:http://iizuka.cs.tsukuba.ac.jp/projects/completion/data/completion_sig2017.pdf 1.概述 图像补全,即补全图像中的覆盖和缺失部分, 网络整体结构如下图所示,整体网络结构还是采取GAN,对于生成器,网络结构采取Unet的形式,首先使用卷积…

深入浅出 -- 系统架构之负载均衡Nginx跨域配置

一、Nginx跨域配置 跨域问题在之前的单体架构开发中&#xff0c;其实是比较少见的问题&#xff0c;除非是需要接入第三方SDK时&#xff0c;才需要处理此问题。但随着现在前后端分离、分布式架构的流行&#xff0c;跨域问题也成为了每个Java开发必须要懂得解决的一个问题。 跨域…

rac数据库默认网关不通导致集群异常

集群CSSD进程reconfiguration完成&#xff0c;显示2个节点都在线。但ora.net1.network服务启动失败&#xff0c;且有依赖关系的资源随后启动失败并且已经达到上限。 查看两个节点的网络信息&#xff0c;发现两个节点的默认网关是不一致的。 修改故障节点网关 在RAC中&#xff0…

基于springboot+vue+Mysql的职称评审管理系统

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…

在线人数统计功能怎么实现?

一、前言 大家好&#xff01;我是sum墨&#xff0c;一个一线的底层码农&#xff0c;平时喜欢研究和思考一些技术相关的问题并整理成文&#xff0c;限于本人水平&#xff0c;如果文章和代码有表述不当之处&#xff0c;还请不吝赐教。 在线人数统计这个功能相信大家一眼就明白是…

基于奇异值分解(Singular Value Decomposition,SVD)的信号去噪算法

01.基于奇异值分解(SVD)去噪原理 奇异值分解&#xff08;Singular Value Decomposition, SVD&#xff09;是线性代数中一种重要的矩阵分解方法&#xff0c;它可以用于信号处理、图像去噪、数据压缩等多种应用。在图像去噪的过程中&#xff0c;SVD可以用来分离图像中的信号和噪…

Transformer详解和知识点总结

目录 1. 注意力机制1.1 注意力评分函数1.2 多头注意力&#xff08;Multi-head self-attention&#xff09; 2. Layer norm3. 模型结构4. Attention在Transformer中三种形式的应用 论文&#xff1a;https://arxiv.org/abs/1706.03762 李沐B站视频&#xff1a;https://www.bilibi…