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卡顿检测的更多相关文章

  1. App测试工具大全,收藏这篇就够了

    随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用.除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一 ...

  2. Android App 测试工具及知识大集合

    简介: 作者从事测试将近11年,有8年的团队管理经验,经历了上市公司,外包,日企,股份制公司的企业文化洗礼,擅长测试团队的组建,流程建立,改造,质量体系建建设,有三次经历在不同企业文化从"0 ...

  3. 几个移动App测试工具

    介绍几款移动App测试的工具: 腾讯测试:http://bugly.qq.com/优测:http://utest.qq.com/fir.im测试:http://bughd.com/ 大致介绍如下: b ...

  4. 【Android端ANR卡顿检测】BlockCanary检测

    一.什么是BlockCanary? 检测主线程卡顿的一个开源工具,基本展现模式等都和LeakCanary很像 二.BlockCanary的工作原理是什么? 工作原理所涉及到的底层的内容一定要理解清楚 ...

  5. iOS app应用界面加载卡顿的问题

    刚发布版本,忽然发现加载界面需要3-5秒延迟,那么问题来了. 首先,发现问题: 1.看代码,基于之前版本更新都没出问题,还是比较确信不是代码中的bug,以防万一,还是仔细看了下关于界面跳转部分的代码, ...

  6. python uiautomator,比 appium 更简单的 app 测试工具

    1,场景 在 app 测试的蛮荒时代,如果要进行 app 自动化测试非常麻烦.张大胖如果想做安卓自动化测试,首先必须要学 Java.因为安卓自动化测试都绕不开 google 自己研发的自动化测试框架, ...

  7. BlockCanary界面卡顿检测

    添加依赖: implementation 'com.github.markzhai:blockcanary-android:1.5.0' 运行后会同时安装检测工具,主要检测UI线程运行卡顿现象 pub ...

  8. APP测试工具与技术

    AndroidDevTools Android Dev Tools官网地址:www.androiddevtools.cn 收集整理Android开发所需的Android SDK.开发中用到的工具.An ...

  9. App测试工具

    1.App性能测试与安全测试工具 性能测试工具:Itest(众测平台) 安全测试:Utest

随机推荐

  1. Java程序员应更新的知识

    2013: 你应该更新的Java知识之常用程序库(一) 你应该更新的Java知识之常用程序库(二) 你应该更新的Java知识之Observer 你应该更新的Java知识之集合初始化 你应该更新的Jav ...

  2. kinnect相关

    1. kinnect的现状. http://tech.qq.com/a/20150909/046760.htm 2. kinnect的相关工作 http://baike.baidu.com/link? ...

  3. C# WinForm 应用程序 开启Console窗口

    /********************************************************************************* * C# WinForm 应用程序 ...

  4. systemtap折腾笔记

    在这货上花费了不少时间,都是受了@agentzh 大神的蛊惑:) 他写的nginx-systemtap-toolkit监测的数据很有价值,对于系统优化实在是利器. 最早折腾systemtap,是在Ub ...

  5. HTTP请求 GET POST 网络编程实现(转)

    尊重原作者收集的资料,复制粘贴只为了避免作者文章出处哪天抽风了访问不了了导致资料消失. 原文地址 http://bbs.neworigin.net/forum.php?mod=viewthread&a ...

  6. Java开发常用Linux命令

    1.查找文件 find / -name filename.txt根据名称查找/目录下的filename.txt文件. find . -name "*.xml"递归查找所有的xml文 ...

  7. Centos6.5下安装protobuf及简单使用

    1.protobuf是google公司提出的数据存储格式,详细介绍可以参考:https://code.google.com/p/protobuf/ 2.下载最新的protobuf,下载地址:https ...

  8. apache配置域名指向

    <VirtualHost *:80>ServerAdmin webmaster@example.com ——管理员邮箱(可以随便写一个)DocumentRoot "/home/p ...

  9. Composer设置忽略版本匹配的方法

    Composer简介 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们.Composer 不是一个包管理器.是的,它涉及 "pa ...

  10. hadoop实战之分布式模式

    环境 192.168.1.101 host101 192.168.1.102 host102 1.安装配置host101 [root@host101 ~]# cat /etc/hosts |grep ...