APP测试工具之TraceView卡顿检测
Traceview卡顿检测
Traceview是Android平台特有的数据采集和分析工具,集成在DDMS工具中,可以采集程序中的方法执行耗时、调用关系、调用次数以及资源占用等情况。
一、使用方法
1、启动虚拟机/连接手机,cmd命令输入ddms启动DDMS工具。打开手机上被测应用,在ddms上选择测试应用的进程。点击Start Method Profiling按钮,当按钮上的小红点变成黑色的时候,处于采集信息状态。
2、操作应用被测模块,操作完成后,点击Start Method Profiling结束采集信息,这时会弹出Traceview界面,显示操作过程中采集的数据信息。
Traceview界面分为时间线界面和分析界面两部分,时间界面显示线程函数的调用信息,包括函数名和函数时间,鼠标在时间线上移动,可以显示当前时间点中线程执行的信息;分析界面展示了线程中函数调用情况,包括CPU使用时间,调用次数等信息。
列名 |
描述 |
Name |
该线程运行过程中所调用的函数名. |
Incl Cpu Time |
某函数占用的CPU时间,包含内部调用其它函数的CPU时间. |
Excl Cpu Time |
某函数占用的CPU时间,但不含内部调用其它函数所占用的CPU时间. |
Incl Real Time |
某函数运行的真实时间(以毫秒为单位),内含调用其它函数所占用的真实时间. |
Excl Real Time |
某函数运行的真实时间(以毫秒为单位),不含调用其它函数所占用的真实时间. |
Call+Recur Calls/Total |
某函数被调用次数以及递归调用占总调用次数的百分比. |
Cpu Time/Call |
某函数调用CPU时间与调用次数的比。相当于该函数平均执行时间. |
Real Time/Call |
同CPU Time/Call类似,只不过统计单位换成了真实时间. |
二、关注点
1、消耗CPU时间较长的方法:选择Cpu Time/Call列进行降序排序,查看耗时最长的函数,如果该函数调用一次或者调用次数很少,但是耗时非常长,那么很可能是潜在的问题。
2、调用次数频繁的方法:选择Call/Recur Calls/Total进行降序排序,查看调用次数频繁且CPU耗时很长的方法,也可能是一个潜在的问题。
三、卡顿检测
如果对应用某个模块进行操作时,明显会觉得卡顿,那么可以用TraceView定位卡顿的原因,Start Method Profiling启动TraceView数据采集,操作卡顿模块,操作时间尽量简短且覆盖卡顿操作,便于查找问题,停止数据采集,查找分析界面CPU耗时较长的方法即可能是卡顿原因所在。
APP测试工具之TraceView卡顿检测的更多相关文章
- App测试工具大全,收藏这篇就够了
随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用.除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一 ...
- Android App 测试工具及知识大集合
简介: 作者从事测试将近11年,有8年的团队管理经验,经历了上市公司,外包,日企,股份制公司的企业文化洗礼,擅长测试团队的组建,流程建立,改造,质量体系建建设,有三次经历在不同企业文化从"0 ...
- 几个移动App测试工具
介绍几款移动App测试的工具: 腾讯测试:http://bugly.qq.com/优测:http://utest.qq.com/fir.im测试:http://bughd.com/ 大致介绍如下: b ...
- 【Android端ANR卡顿检测】BlockCanary检测
一.什么是BlockCanary? 检测主线程卡顿的一个开源工具,基本展现模式等都和LeakCanary很像 二.BlockCanary的工作原理是什么? 工作原理所涉及到的底层的内容一定要理解清楚 ...
- iOS app应用界面加载卡顿的问题
刚发布版本,忽然发现加载界面需要3-5秒延迟,那么问题来了. 首先,发现问题: 1.看代码,基于之前版本更新都没出问题,还是比较确信不是代码中的bug,以防万一,还是仔细看了下关于界面跳转部分的代码, ...
- python uiautomator,比 appium 更简单的 app 测试工具
1,场景 在 app 测试的蛮荒时代,如果要进行 app 自动化测试非常麻烦.张大胖如果想做安卓自动化测试,首先必须要学 Java.因为安卓自动化测试都绕不开 google 自己研发的自动化测试框架, ...
- BlockCanary界面卡顿检测
添加依赖: implementation 'com.github.markzhai:blockcanary-android:1.5.0' 运行后会同时安装检测工具,主要检测UI线程运行卡顿现象 pub ...
- APP测试工具与技术
AndroidDevTools Android Dev Tools官网地址:www.androiddevtools.cn 收集整理Android开发所需的Android SDK.开发中用到的工具.An ...
- App测试工具
1.App性能测试与安全测试工具 性能测试工具:Itest(众测平台) 安全测试:Utest
随机推荐
- Scalding初探之二:动手来做做小实验
输入文件 Scalding既可以处理HDFS上的数据,也可以很方便地在本地运行处理一些test case便于debug,Source有好多种 1 TextLine(filename) TextLine ...
- Scalding初探之一:基于Scala的Hadoop利器
把你从写繁琐的Map-reduce Job中解放出来,写分布式跟写本地程序没两样,Scala真真代表着先进生产力的方向啊. 好的,今天开始直播基于Scala的Scalding啦,循序渐进地看以下页面: ...
- poj1026 Cipher ——置换群
link:http://poj.org/problem?id=1026 其实这道题目和poj2369这道题目一样. 都是基础的置换群题目.把那道题目理解了,这道题就没问题了. 不过我的方法貌似比较挫, ...
- codeforces194b
link:http://codeforces.com/problemset/problem/334/B #include <iostream> #include <cstdio> ...
- RelativeLayout.LayoutParams.addRule()方法
1.应用场景 在使用RelativeLayout布局的时候,通常在载入布局之前在相关的XML文件中进行静态设置即可.但是,在有些情况下,我们需要动态的设置布局 的属性,在不同条件下设置不同的布局排列方 ...
- [BZOJ 3503][Cqoi 2014]和谐矩阵
我觉得这一题的样例输出一点都不和谐,大家千万别像我一样被坑了…… 题目不算难,果然是进错省系列555,不过搞出 O(n*m*2m) 的还是不要挣扎的比较好 我们暴力地推出第 n 行 第 m 列中每个数 ...
- 【支付专区】之对字符串数据进行Base64位加密,解密
加密,解密 String pwd="测试"; byte[] bytes = pwd.getBytes("UTF-8"); //加密 String pwdNew= ...
- python---str
Python转义字符 \ (在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制 ...
- SQL Server 2008 数据库镜像部署实例之一 数据库准备
SQL Server 2008 数据库镜像部署实例之一 数据库准备 一.目标 利用Sql Server 2008 enterprise X64,建立异步(高性能)镜像数据库,同时建立见证服务器实现自动 ...
- Windows,caffe 仅cpu
http://caffe.berkeleyvision.org/installation.html 按着官网的步骤:https://github.com/BVLC/caffe/tree/windows ...