前端app专项测试理论基础

Posted sunada2005

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端app专项测试理论基础相关的知识,希望对你有一定的参考价值。

专项分类

、专项性能 - 内存

1. OOM:一次性分配内存不足,超过android进程最大内存限制,挤爆内存。持续内容泄漏导致内存不足。

2. Low Memory Killer:手机剩余内存低于警戒线后,Low Memory Killer会在后台钉死占用内存较多的进程。

3. 频繁GC:JVM虚拟机在进行GC时,除GC线程外其他线程挂起状态。内存使用不当,导致频繁GC引起卡顿。

二、专项性能 - CPU

1. CPU冗余使用:代码写得烂,算法不高效,变量类型不合理,给CPU带来额外负担,不仅执行效率低还耗电高

2. CPU资源争抢:抢占主线程CPU资源引起UI卡顿,CPU核心数与线程数不匹配导致效率低下

3. CPU利用率低:CPU利用率低导致执行时间长,如:单线程、同步初始化导致启动时间长

三、专项性能 - 网络流量

1. Round-Trip Time(RTT,往返时延):主要决定依赖接口资源的页面加载时间,受网络、服务架构等方面影响

2. 请求流量带宽:用户和公司都要为流量资费买单;流量同样影响RTT。

四、专项性能 - 加载时间

页面首次渲染主题结构和静态内容(T1)、网络请求动态数据内容(T2)、重新渲染填充动态数据内容(T3),页面加载总时长=T1 + T2 + T3

 

技术分享图片

五、UI卡顿

低于24FPS人眼会感知不连续;低于30FPS无法表达绚丽画面。CPU问题(不必要的布局和时效)、GPU问题(过度绘制)会造成UI卡顿。

六、启动时间

1. 冷启动

2. 热启动

3. 首次启动

七、稳定性

1. Monkey

2. 智能遍历:根据深度优先或广度优先算法遍历点击页面中的元素,目的以尽可能多点击APP中的元素,看哪里会出现异常

3. 弱网测试:模拟不同带宽和丢包率的弱网络环境下APP的运行状态,常与UI自动化结合。

八、兼容性

1. 品牌

2. 系统

3. 分辨率

九、安全性

1. 敏感信息加密:对敏感信息比如账号密码进行加密存储,避免明文存储。敏感信息传输加密,并采用https安全协议等。

2. 代码混淆:将程序代码转换成一种功能上等价但难于阅读和理解的形式的行为。如变量、函数、类的名字改写成无意义的名字,将for循环改写成while循环,将循环改写成递归,精简中间变量等。

3. APK加壳:加壳程序可以有效阻击对程序的反汇编分析,从而保护软件版权,防止被破解。Android Dex文件加壳,一般需要加壳程序、解壳程序和源程序。

 

工具集

工具集 内存 CPU 流量 流畅度 耗电量
发现问题 adb shell dumpsys meminfo | grep packagename adb shell dumpsys cpuinfo | grep packagename

adb shell cat /proc/uid_stat/<UID>/tcp_rcv

adb shell cat /proc/uid_stat/<UID>/tcp_snd

adb shell dumpsys gfxinfo

adb shell dumpsys SufaceFlinger

Battery Historian
定位问题

Memory Monitor

MAT

LeakCanary

TraceView

Systrace

Wireshark

Hierarchy Viewer

CPU过度绘制检测

Battery Historian

以上是关于前端app专项测试理论基础的主要内容,如果未能解决你的问题,请参考以下文章

软件测试体系学习及构建(22)测试专项丨性能测试基本理论

python专项测试——Android App Api接口测试

朝夕教育2023年03月 其他-Web前端基础面试题(react专项_35道)

朝夕教育2023年03月 其他-Web前端基础面试题(VUE专项_58道)

接口测试理论基础

软件测试体系学习及构建(13)-测试基础之测试工程师的基本要求