APP非功能测试

https://blog.csdn.net/u013059441/article/details/79482097

1、查看APP启动时间

APP启动分为热启动和冷启动,判断依据是否有无该APP启动的进程

查看手机某一进程

ps -ef命令不大行,翻看自己以前的笔记,方法是:进入shell模式,ps -ef|grep com.zhongduomei.rrmj.society

APP非功能测试_第1张图片

准备:

adb shell dumpsys window w |findstr \/ |findstr name=

得到的包名为com.zhongduomei.rrmj.society     mSurface=Surface(name=com.zhongduomei.rrmj.society/com.zhongduomei.rrmj.society.function.main.activity.MainActivity)

方法一:命令

命令:adb shell am start -W com.zhongduomei.rrmj.society/com.zhongduomei.rrmj.society.function.main.activity.MainActivity

1、冷启动

APP非功能测试_第2张图片APP非功能测试_第3张图片

2、热启动

APP非功能测试_第4张图片

指标:

WaitTime:总的耗时,包括前一个应用活动停止的时间和新应用启动的时间

ThisTime:表示一连串启动应用活动的最后一个活动的启动耗时

TotalTime:新应用启动的耗时,包括新进程的启动和活动的启动,不包括前一个应用活动停止的耗时

这个方法只能计算活动的启动时间,并不是真正意义上的启动时间

我在录屏软件上整个的启动时间差不多9秒,,,

响应时间有一个普遍的2/5/10秒原则,分别是非常有吸引力,比较不错,糟糕

用户点击屏幕——>界面完全展现

响应时间 = 界面完全展现时间-用户点击屏幕时间

判断依据:

1)冷启动响应时间不超过2秒

2)安装完成首次启动时间不超过5秒

3)其它页面响应时间不超过5秒

方法二:截图命令(感觉自带的手机录屏软件有可能会好用一些)

adb shell screenrecord /sdcard/demo.mp4

局限性:不精确,不方便定位,操作成本太高

由于手机设置问题,不能截屏,自带的好用一些

方法三:代码打点,查看日志

可以看到各个函数的耗时和总耗时,方便定位问题和提高测试针对性

方法四:脚本

原理:

1)在发送touch事件后记录起始时间

2)当mFocusedActivity的数据中有指定的activity,记录结束时间

3)两者之差就是所需时间

2、查看APP电量使用情况

测试场景:待机,活动和静默状态

测试方法:

方法一:硬件设备

1)  测试机拆除电源后连接稳压电源并串联万用表

2)  按照万用表表盘操作读取时刻电流mA

3)  测试结束后保存平均电流mA

方法二:命令

adb shell dumpsys batterystats

生成一大串数据,表示看不懂

adb shell dumpsys batterystats --reset

重置电池信息,写进文件

adb shell dumpsys batterystats  > D:\battery.txt

APP非功能测试_第5张图片

Computed drain即是段时间内消耗功耗mAh

方法三:第三方测试工具和安卓自带的软件和硬件耗电统计

APP非功能测试_第6张图片

在应用市场下一些其他的电量监控软件

3、手机兼容性测试

测试方法:手工测试,自动化测试,第三方测试工具

4、查看APPCPU使用情况

关注指标:

1)   cpu总体使用率

2)   应用程序CPU占用率

方法一:命令

top命令:

进度ID 用户 优先级PR 

APP非功能测试_第7张图片

dumpsys cpuinfo | grep com.zhongduomei.rrmj.society

两种方式得出的结果不一样,因为计算方式不一样

方法二:第三方测试工具:

5、查看手机流量使用情况

测试场景:

 

方法一:命令

操作步骤:

1、查看进程号

APP非功能测试_第8张图片

2、获取uid的值cat /proc/{pid}/status

APP非功能测试_第9张图片

3、获取发送的流量

cat /proc/uid_stat/{uid}/tcp_snd

4、获取接收的流量

cat /proc/uid_stat/{uid}/tcp_rcv

局限性:只能统计一个总数据,无法进行多维度的分析

方法二:第三方监测改工具

6、流畅度测试

页面绘制,界面卡顿(丢帧)可能是由于两个页面绘制的时间差超过0.1秒

测试场景:APP非功能测试_第10张图片

测试方法:

1、自带的开发者工具

APP非功能测试_第11张图片

绿色为16ms的阈值,只要不超过,都可以任务是流畅

2、ADB命令

adb shell dumpsys gfxinfo com.zhongduomei.rrmj.society > D:\fps.txt

APP非功能测试_第12张图片

90th percentile: 11ms 比较符合测试场景

7、第三方测试工具

1、淘宝:易测

https://easytest.taobao.com/

电脑和手机同步监控(需要开启root权限)

APP非功能测试_第13张图片

APP非功能测试_第14张图片

2、网易:Emmagee

https://blog.csdn.net/xiaona0523/article/details/73917282

3、腾讯:GT

点击【开启】

APP非功能测试_第15张图片

查看CPU信息

APP非功能测试_第16张图片

MEMORY内存

APP非功能测试_第17张图片

接受到的流量信息

APP非功能测试_第18张图片

网络信号

APP非功能测试_第19张图片

 

4、iTest

很多第三方测试工具需要手机root权限

你可能感兴趣的:(APP测试)