Android性能测试 | 启动时间篇

发表于:2018-2-23 09:34

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:felicity_angel    来源:51Testing软件测试网采编

  3、clumsy参数说明及使用
  界面如下:
  clumsy
  首先根据用户选择的?filter?来拦截指定的网络数据。在 filter
  中可以设定你感兴趣的协议(tcp/udp),端口号,是接收还是发出的端口。你也可以通过简单的逻辑语句来进一步缩小范围。当 clumsy
  被激活时,只有符合这些标准的网络数据会被进行处理,而你不感兴趣的数据仍然会由系统正常传输。
  当被 filter 的网络数据包被拦截后,你可以选择 clumsy 提供的功能来有目的性的调整网络情况:
  1.延迟(Lag),把数据包缓存一段时间后再发出,这样能够模拟网络延迟的状况。
  2.掉包(Drop),随机丢弃一些数据。
  3.节流(Throttle),把一小段时间内的数据拦截下来后再在之后的同一时间一同发出去。
  4.重发(Duplicate),随机复制一些数据并与其本身一同发送。
  5.乱序(Out of order),打乱数据包发送的顺序。
  6.篡改(Tamper),随机修改小部分的包裹内容。
  类似模拟网络环境的软件很多,大家可以针对自己的情况选择,不要找环境搭建过于繁琐的工具,简单易用就好。
  定位常用软件
  在发现问题后,定位分析时,可以借助以下常用软件。
  1、traceview使用简介
  TraceView 是 Android 平台特有的数据采集和分析工具,它主要用于分析 Android 中应用程序的 hotspot,可以方便的查看线程的执行情况,某个方法执行时间、调用次数、在总体中的占比等,从而定位性能点。
  使用方法:
  使用Android studio->Android Device Monitor->进入DDMS->点击开始按钮
  Case:在微粉首页上下滑动,滑动过程中等待图片、视频加载完成?。
  点击结束按钮出现结果如下(划分为上下两个面板,即Timeline Panel(时间线面板)和Profile Panel(分析面板):
  Timeline Panel又可细分为左右两个部分:
  (1)左边显示的是测试数据中所采集的线程信息。
  (2)右边所示为时间线,时间线上是每个线程测试时间段内所涉及的函数调用信息。
  (3)可以在时间线中移动时间线纵轴。纵轴上边将显示当前时间点中某线程正在执行的函数信息。
  Profile Panel(分析面板)
  按调用次数由高到低排列结果如下图
  按照占用CPU时间从高到低排列结果如下图:
  2、Systrace使用简介
  Systrace是Android4.1中新增的性能数据采样和分析工具。它可帮助开发者收集Android关键子系统(如surfaceflinger、WindowManagerService等Framework部分关键模块、服务,View系统等)的运行信息,从而帮助开发者更直观的分析系统瓶颈,改进性能。Systrace的功能包括跟踪系统的I/O操作、内核工作队列、CPU负载以及Android各个子系统的运行状况等。
  使用方法:
  使用Android studio->Android Device Monitor
  进入DDMS->打开微粉APP->点击开始systrace
  设置参数->点击OK
  case:在微粉首页滑动列表,滑动过程中需等待图片视频加载完成
  在chrome地址栏中输入chrome://tracing 点击load打开trace.html文件
  通过工具抓取的数据用浏览器打开后显示如下:
  查看Frames这一行,可以看到这里展示了被绘制出来的每一帧,并且用绿、黄、红三颜色来区分它们在绘制时的性能
  选一个红色帧在底部给出Alter信息:
  展开“Inflation during ListViewrecycling”这条警告(警告部分的总耗时155毫秒,远高于了我们对保障60fps所需的16毫秒绘制时间):
  选择这一帧中最长的一块,对其进行进一步分析整个区块耗时98毫秒,而在这之中CPU只消耗了65毫秒的时间去运算。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号