首页 > 其他分享 >App性能测试

App性能测试

时间:2024-03-03 09:00:10浏览次数:22  
标签:应用 启动 App adb 内存 测试 性能 加载

App性能测试主要包含以下几点:

1、响应

2、内存

3、cpu

4、FPS (app使用的流畅度)

5、GPU过度渲染

6、耗电

7、耗流

一、响应

软件的响应时间和响应速度直接影响到用户的体验度,如果一个软件,迟迟加载不出来,会直接影响到软件的日活、留存。因此对于一个软件,对响应速度测试是必不可少的。

主要测试点:

1、冷启动:首次启动app的时间间隔(只是启动时间,不包括页面加载)

2、热启动:非首次启动app的时间间隔(只是启动时间,不包括页面加载)

3、完全启动:从启动到首页完全加载出来的时间间隔

4、有网启动:从发起跳转,到页面完全加载出来的时间间隔

5、无网启动:从发起跳转,到页面完全加载出来的时间间隔

(在项目中,主要测试关注点是冷启动,热启动)

测试方法:

1、使用adb命令

1) 冷启动

adb shell am start -W packageName/ActivityName(绝对路径,首个Activity)

含义:

ThisTime: 该Activity的启动耗时;

TotalTime: 应用自身启动耗时, ThisTime+应用application等资源启动时间;

WaitTime: 系统启动应用耗时, TotalTime+系统资源启动时间

2)热启动:按back按键后再启动adb命令

测试标准:冷启动时间不超过1.5s, 热启动不超过1s.

 

二、内存

在Android系统中,每个APP进程除了同其他进程共享内存(shared dirty)外,还独用私有内存(private dirty),通常我们使用PSS(私有内存+比例分配共享内存)来衡量一个APP的内存开销。由于一个移动设备的内存是固定的,如果内存消耗过大就会造成应用卡顿或者闪退,需要对内存进行测试。正常情况下,应用不应占用过多的内存资源,且能够及时释放内存,保证整个应用内的稳定性和流畅性。

测试点:

1、空闲状态:切换至后台或者启动后不做任何操作,消耗内存最少。

2、中强度状态:时间偏长的操作应用。

3、高强度状态:高强度使用应用,可以跑monkey来测试(通常用来测试内存泄漏)。

内存泄漏:指应用里的内存一直没有释放,内存一直增加 ,系统内存一直减少

测试方法:

1、使用adb命令:adb shell dumpsys meminfo packageName

获取应用包名和Actively:

adb shell dumpsys window | findstr mCurrentFocus

测试关注点:

1、Native heap alloc

2、Dalvik heap alloc

 

 ============

使用PerfDog进行客户端性能测试

https://perfdog.qq.com/

 

标签:应用,启动,App,adb,内存,测试,性能,加载
From: https://www.cnblogs.com/ttylinux/p/18049594

相关文章

  • java Flappy Bird小游戏二次开发
    引言FlappyBird是一款广为人知的经典小游戏,以其简单的操作方式和高难度挑战吸引了全球数百万玩家。游戏的核心机制非常直接——玩家通过点击屏幕使小鸟飞翔,避免碰撞到上下移动的管道,同时尽可能地飞行得更远。这种看似简单的游戏设计隐藏了深层的挑战性和上瘾性,让人不禁一试再试......
  • 【Mybatis】【三】源码分析- MapperFactoryBean 的创建过程以及 Mapper 接口代理的生
    1 前言本节我们续前两节(调试查看Mapper接口生成过程、源码分析Mapper生成注入入口分析)的内容,看下MapperFactoryBean是如何代理掉我们的@Mapper接口的。上节我们看到我们的Mapper接口的BeanDefinition,已经放进spring的上下文中了,也就是在BeanFactory的BeanDefin......
  • Applied Optics
    ChapterOneEnglishChinesewavefront波面[\('weɪvfrʌnt]\)ray光线\([reɪ]\)normal法线\([ˈnɔrm(ə)l]\)reflection反射\([rɪˈflekʃ(ə)n]\)refraction折射\([rɪ'frækʃ(ə)n]\)refractiveindex折射率\([rɪ'fræktɪv]~[ˈɪnˌ......
  • rewrk一个更现代的http框架基准测试实用程序
    引言    rewrk一个更现代的http框架基准测试实用程序。HTTP基准测试(HTTPbenchmarking)是一种测量和评估HTTP服务器或应用程序性能指标的活动。其目的是在特定条件下模拟大量用户请求,以测量服务器或应用程序的响应能力、吞吐量、延迟等指标,从而评估其性能表现。HTTP基准测试通......
  • APP自动化
    一、安装环境1、安装JDK:作用:AndriodSDK会调用JavaJDK说明:JDK包含JRE官方网站:https://www.oracle.com/java/下载地址:https://www.oracle.com/cn/java/technologies/downloads/#jdk17-windows配置JDK环境变量:JAVA_HOME  C:\ProgramFiles\Java\jdk-17Path  %JAVA_......
  • 关于SpringMVC中@RequestMapping的params参数
    @RequestMapping注解的params参数同一个url,只要params不同,springmvc也是会区分匹配的。@PostMapping("/reduceProductStock")publicStringreduceProductStock(@RequestParamLongproductId,@RequestParamIntegerquantity){productService.reduceProductStock(pr......
  • 直播app系统源码,Android端如何实现禁止截屏或录屏
    直播app系统源码,Android端如何实现禁止截屏或录屏引言相信大家在使用某些平台应用的时候,都会有限制的规定。通常情况下,录屏、截图软件都可以在手机的运行过程中进行录屏、截图,普通的平台也不会阻止录屏、截图软件运行。但是在直播app系统源码的某些比较敏感的业务上镜上面......
  • 直播系统app源码,Android端与屏幕相关的几个注意事项
    直播系统app源码,Android端与屏幕相关的几个注意事项Android端的宽屏适配、禁止截屏和保持屏幕常亮,是直播系统app源码开发时需要注意的三个重要事项。宽屏适配越来越多的手机厂商趋向于全面屏设计,屏幕比例均超过过去常见的16:9比例。超大屏幕比例的设计对于AndroidAp......
  • selenium-grid分布式测试环境
    1.什么时候使用grid针对不同的操作系统、浏览器类型、浏览器版本并发执行用例,缩短用例执行时间(单台电脑性能不足)grid是一个庞大的、复杂的分布式组件,本身有额外的开销2.启动grid下载地址:https://www.selenium.dev/downloads/下载jar包配置jdk执行命令,启动jar包启动命......
  • 软件测试
    测试流程1.分析需求参与需求评审,减少设计阶段的缺陷;理解特性功能点;2.设计测试方案根据需求设计测试方案,包括:测试环境:操作系统、数据库、组网结构;测试工具;测试功能点及场景;是否需要性能测试、安全测试等;3.编写测试用例根据测试方案的场景,编写具体可执行的用例;预制条......