安卓app测试之Monkey日志分析】的更多相关文章

安卓app测试之Monkey日志分析 链接:https://www.cnblogs.com/wuzm/p/10965762.html…
转:原文:https://blog.csdn.net/a136332462/article/details/76066909  一.一般测试结果分析-搜索关键字: 1.无响应问题可以在日志中搜索 “ANR” . 2.崩溃问题搜索 “CRASH” . 3.内存泄露问题搜索"GC"(需进一步分析). 4.异常问题搜索 “Exception”(如果出现空指针, NullPointerException,需格外重视). 详细说明 1. ANR问题:在日志中搜索“ANR”(“Applicatio…
一.Monkey特点 1.运行时机:一般是产品稳定后 首轮功能测试完成的夜间进行 2.需要知道packageName 3.目的:主要测试产品是否存在崩溃问题和ANR问题. 二.获取包名的两个方法 首先安装到模拟器上想获取的包:adb install  <带路径的包名> 1.通过adb logcat获取 adb shell “logcat | grep START”[如果直接使用不出现log,可以先进入linux命令:adb shell,然后再执行:logcat | grep START]然后打…
Monkey日志分析是Monkey测试中非常重要的一个环节,通过日志分析,可以获取当前测试对象在测试过程中是否会发生异常,以及发生的概率,同时还可以获取对应的错误信息,帮助开发定位和解决问题.介绍日志分析方法之前,先来看一下日志的保存方法. 1.Monkey日志的保存方法 Monkey运行日志常见的保存方法有三种: ❑ 保存在PC中,代码如下: >adb shell monkey [option] <count> >d:\monkey.txt 执行以上命令,Monkey的运行日志将…
一.简介 1.什么是Monkey测试? Monkey testing,也有人叫做搞怪测试.就是用一些稀奇古怪的操作方式去测试被测试系统,以测试系统的稳定性.Monkeytest,一般指这样的测试活动,用毫无规律的指令或操作使用被测系统,观察系统的稳定性和容错性能. Monkey测试是Android自动化测试的一种手段,Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常.当Monkey程序在模拟器或设备运行的时候,如果用户触发了比如点击,触摸,手势…
安卓app测试之cpu监控,如何获取监控的cpu数据呢? 一.通过Dumpsys 来取值 1.adb shell dumpsys cpuinfo 二.top 1.top -d 1|grep packageName adb shell "top -d 1|grep tv.danmaku.bili"…
一.初步分析方法:Monkey测试出现错误后,一般的差错步骤为以下几步:1.找到是monkey里面的哪个地方出错2.查看Monkey里面出错前的一些事件动作,并手动执行该动作3.若以上步骤还不能找出,可以使用之前执行的monkey命令再执行一遍,注意seed值要一样一般的测试结果分析:1.ANR问题:在日志中搜索"ANR"2.崩溃问题:在日志中搜索"Exception"二.详细分析monkey日志:首先我们需要查看Monkey测试中是否出现了ANR或者异常,具体方法…
APP的测试重点小部分在APP本身,大部分还是在网络通信上(单机版除外).所以在安卓APP测试过程中,网络抓包非常重要,一般来说,app开发会采用HTTP协议.Websocket.socket协议,一般来说,HTTP协议最多,Websocket是后起之秀,socket最少,而针对HTTP和websocket,Burp Suite工具是最适合不过的工具了.但是在遇到了app使用SSL或TLS加密传输(https)的时候,由于证书不被信任,直接导致网络通信终端,抓包失败.本文介绍如何使用Burp s…
一.内存分析步骤 1.启动App. 2.使用monitor命令打开:ADM(包含DDMS) ->update heap 3.操作app,点几次GC 4.dump heap 5.hprof-conv转化 : hprof-conv xxx-a.hprof xxx-b.hprof 6.MAT分析 下载mat分析工具,然后打开转化后的文件. 具体分析要了解java语言,以及内存.堆栈等,后续再补上. 二.区分几种内存 1.VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)…
Monkey测试是一种为了测试软件稳定性.健壮性的快速有效的方法,Monkey程序由Android系统自带,使用Java语言写成.本此由于公司APP产品所需,用monkey进行稳定性测试,下面将本次使用monkey测试做个小结. 1.Monkey测试的特点 1)测试的对象仅为应用程序包,有一定的局限性. 2)Monkey测试使用的事件流数据流是随机的,不能进行自定义. 3)可对MonkeyTest的对象,事件数量,类型(触摸.缩放屏幕.点击.拖移等操作类型),频率等进行设置. 2.Monkey测…
步骤: 1.把要测试的apk包放在 SDK-platfrom-tools下 2.配置adb.exe的环境变量 3.手机连接上电脑(虚拟机和真机只能连接一个) 4.运行:adb devices   查看设备名称 5.adb -s emulator 设备名称 shell 6.ls data/data 7.monkey -p 包名 -v 次数 -p  指定一个或多个包名 -v 显示反馈信息 -s seed的值,随机的次数 可以直接执行:adb monkey -p 包名 -v 次数 查看cpu的使用值:…
Monkey测试的og分析,我们可以通过几个关键词来判断测试是否通过.1)Monkey finished打开LOG,查看log的最下端,是否有类似以下字段:## Network stats: elapsed time=5123ms (5123ms mobile, 0ms wifi, 0ms not connected)// Monkey finished这个字段表明本次的Monkey没有异常,测试通过. 2)CRASH 同样,在得到LOG后,搜索"CRASH"字段,如果搜索到有结果,则…
MonkeyScript是一组可以被Monkey识别的命令集合 优点:MonkeyScript可以完成重复固定的操作 使用:adb shell monkey -f <scriptfile> <event-count>  一.MonkeyScript命令 1.DispatchTrackball —— 轨迹球事件 DispatchTrackball(long downtime,long eventtide,int action,float x,float y,float pressur…
1.先下载java的jdk;配置java变量 安装好之后会有两个文件夹一个是jdk 一个是jre(运行)然后配置好java环境变量:JAVA_HOME:C:\Program Files\Java\jdk1.8.0_121;Path:%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%lib\tools.jar; 2.下载android-sdk_r24.4.1-windows: 3.下载解压后,运行SDK manager.exe;选择安装platform-tools,然后把这个文件…
一.MonkeyRunner简介 MonkeyRunner提供了系列的API ,MonkeyRunner可以完成模拟事件及截图操作 ,分为以下三类: MonkeyRunner:用来连接设备或模拟器的 MonkeyDevice:提供安装.卸载应用,发送模拟事件 MonkeyImage:完成图像保存及对比的操作 多设备控制 功能测试 回归测试 二.MonkeyRunnerAPI 1.alert ——警告框 MonkeyRunner.alert(string message, string title…
一.启动时间监控 通过adb命令获取 adb shell am start -W /<packageName> /<activityName> 案例: adb shell am start -W tv.danmaku.bili/tv.danmaku.bili.ui.splash.SplashActivity 二.电量监控 获取手机电池信息 adb shell dumpsys battery adb shell dumpsys battery set status 1 adb she…
一.查看PID 通过ps命令查看:ps | grep packageName 案例:adb shell "ps | grep tv.danmaku.bili" adb shell "ps | grep tv.danmaku.bili$" 二.查看UID 1.通过查看packages.list adb shell cat /data/system/packages.list | grep packageName 案例:adb shell "cat /data…
一.通过Dumpsys 来取值 1.adb shell dumpsys meminfo 获取的所有进程的内存信息,以及总内存,剩余内存,使用的内存等信息. 2.想获得某一进程内存的详细信息,在后面加上包名或者pid. adb shell dumpsys meminfo pakagename or Pid 3.重点关注字段 (1) Native/Dalvik 的 Heap 信息 它分别给出的是JNI层和Java层的内存分配情况,如果发现这个值一直增长,则代表程序可能出现了内存泄漏. Dalvik…
Android APP压力测试(三) 之Monkey日志自动分析脚本 前言 上次说要分享Monkey日志的分析脚本,这次贴出来分享一下,废话不多说,请看正文. [目录] 1.Monkey日志分析脚本 2.脚本原理 3.操作实例 1.Monkey日志分析脚本 1).脚本文件:Monkey_Log分析.bat @ECHO OFF ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: ECHO.::             分析Monkey日志 …
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u011436666/article/details/53998332 在之前的文章Android自动化测试之Monkey中我们了解过了Monkey的4大类命令和基本使用,当我们运行Monkey之后,我们会发现它的日志输出是很有规律的,因此很有必要对Monkey事件及其输出日志做一个了解. 1.Monkey事件 Monkey事件是用来模拟用户的常规操作的,对手机进行稳定性测试,主要可以分为11大类事…
Android自动测试之Monkey工具 APP测试工作中经常会听到领导说,APP压力测试做了吗?刚入行时,不知道什么是 APP压力测试,找了半天没找到自己想要的.过了几年,回头想这个问题,发现牵扯了很多地方.下面我根据自己的理解说以下两点: APP运行稳定性 服务器高压情况下APP运行稳定性 APP运行稳定性 举个例子,我们打开APP,随便点两下,APP就停止运行,那么能说这个APP稳定吗?当然实际情况下,不会点两下就奔溃的.既然点两下不会奔溃,那么我点1万次,或者10万次呢?这个就不好做保证…
1.什么是monkey? Monkey是一个命令行工具,使用安卓调试桥(adb)来运行它,模拟用户触摸屏幕.滑动Trackball.按键等随机事件流来对设备上的程序进行压力测试,检测程序多久的时间会发生异常,可以根据获取的log信息进行修复. 注:运行adb服务,需要搭建android sdk的环境,可以参考我另一篇<APP压力稳定性测试之monkey环境搭建>完成. 2.Monkey的一般使用步骤 1.先确认设备(模拟器或者真机)是否连接成功.命令:adb devices,出现设备号则表示连…
今天小菜在一个测试群内看到群友发出一个monkey的报错信息,其实是一个很简单的报错 个人觉得monkey虽然操作起来比较简易,但其实查看日志分析日志也是很重要的环节,如果对错误分析不够详细,就容易误认为是程序的问题 以下举个例分析一下 这个报错日志其实已经很简单的告诉你错误原因了 解析如下:第一行:monkey因为错误而终止了 第二行:出错的错误事件在第153次 第三行:发送旋转事件,度数为0度 很明显,错误是发生在旋转屏幕的原因,那么是不是软件自身的问题呢,我们往下分析 首先:1.检查自己模…
一.什么是稳定性测试? 通过随机点击屏幕一段时间,看看app会不会奔溃,能不能维持正常运行. 二. Money是什么? Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行测试,检测程序多久的时间会发生异常.和MonkeyRunner几乎是完全不同的,MonkeyRunner相当于是搞自动化测试的了 官方介绍: https://developer.android.com/studio/test/mo…
[原创]Android Monkey 在线日志分析工具开发 在移动App测试过程中,Monkey测试是我们发现潜在问题的一种非常有效手段,但是Android原生的Monkey有其天然的不足,数据不能有效的去解读,同时也不能提供非常清晰的信息,所以针对这个问题,我们设计了一款Monkey在线日志分析工具,可以实现如下功能:…
一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种为了测试软件的稳定性.健壮性的快速有效的方法.Monkey测试是Android平台下自动化测试的一种快速有效的手段. 二.环境配置 JDK配置:根据自己的电脑系统位数,选择适当的JDK,若自己电脑系统是32位,尽量也选择使用32位的JDK,在此以此为例进行详解.JDK…
"知物由学"是网易云易盾打造的一个品牌栏目,词语出自汉·王充<论衡·实知>.人,能力有高下之分,学习才知道事物的道理,而后才有智慧,不去求问就不会知道."知物由学"希望通过一篇篇技术干货.趋势解读.人物思考和沉淀给你带来收获的同时,也希望打开你的眼界,成就不一样的你. 以下为文章正文: 想知道Android App常见的保护方法及其对应的逆向分析方法吗? 网易云易盾资深安全工程师 钟亚平 3月17日,安卓巴士全球开发者论坛在重庆举办,网易资深安全工程师钟…
今天的话题主要是关于微信小程序.安卓APP.苹果APP对比分析.既然是对比分析肯定是将它们一个一个说明. 本篇不涉及技术话题,只讲解微信小程序.安卓APP.苹果APP它们各自的优缺点及其应用场景. 一.微信小程序 1.微信小程序的优势 (1)对用户使用上来说,确实方便,要用的时候打开,不用的时候关掉,即用即走.这点比需要下载,还要占用手机内存空间的APP要好.        (2)主要的样式代码都封装在微信小程序里面,所以打开速度比普通的H5要快,接近原生APP. (3)可以调用比H5更多的手机…
最近带着学生做的某个项目,跑健壮性Monkey,出现一次Crash全过程-日志分析: 准备:搭建adb环境.安装实际测试包:开始: Monkey命令: adb shell monkey -p com.**** -v-v-v --throttle 300 --pct-touch 30 --pct-motion 20 --pct-nav 20 --pct-majornav 15 --pct-appswitch 5 --pct-anyevent 5 --pct-trackball 0 --pct-sy…