App功能测试

模型

瀑布模型,敏捷模型
在这里插入图片描述
常用敏捷开发模型:
Scrum:
在这里插入图片描述

发布

灰度发布:由于一个项目,一般线上部署时有多台服务器运行,所以灰度1台至3台,看看新功能是否OK,如果失败则只需要回滚几台,比较方便。

需要安装软件包(移动端,电脑端)
格式:
安卓:xxx.apk
IOS:xxx.IPA

自己如何获取: 内测平台
例如:
蒲公英、Testlink

如何发给用户: 通过不同的发布渠道和平台
例如:
安卓:应用宝,360手机助手,某品牌手机商店
IOS:App store、iTools

专项测试

功能测试:

兼容性测试:
手机型号、系统版本、分辨率、屏幕尺寸、网络(3G,4G,5G,WIFI)、应用兼容性(硬件,软件,操作系统设置)

安装、卸载、升级测试
PUSH测试
用户体验测试

安装测试测试点

正常场景:
在不同的操作系统版本上安装
从不同的安装渠道安装(APP商城、手机助手直接下载apk或者ipa文件安装
不同的安装路径(安装到手机上、安装到SD卡)

异常场景:
安装时出现异常(关机、断网),恢复后能否继续安装
安装时存储空间不足
安装时手动取消后再次安装
正在运行时覆盖安装
低版本覆盖安装高版本
卸载后安装

卸载测试点

正常卸载(APP手动卸载、工具卸载)
运行时卸载
取消卸载(第三方软件、二次弹窗后取消)
卸载异常中断(关机)
卸载后无数据残留(给用户提示确认,可保留,可删除/不做提示,默认清空数据)

升级测试点

从临近版本升级
跨版本升级(当前版本N,N-2\)
不同渠道升级(应用商场、手机助手)
升级提醒成功(可不提醒、可以提示升级、强制升级)
应用内升级时非WIFI提醒

交叉事件测试点

APP运行时接打电话
APP运行时收发信息
APP运行时查看应用推送
APP运行接上蓝牙设备
APP运行时接收文件弹窗提醒
APP运行时旋转屏幕
APP运行时切换网络(4G、Wi-Fi)
App运行时使用相机、计算器等手机自带应用
App运行时电量告警、插拔充电器

push消息推送

在这里插入图片描述
在这里插入图片描述

用户体验测试

UI界面测试(原图对比)
横竖屏测试
易用性测试(菜单是否过深,步骤是否过多)
关于手机应用上的其他辅助功能(放大字体,反色,语音转换)

性能测试

SoloPi软件:是一个无线化、非侵入式的 Android 自动化工具,具备录制回放、性能测试等功能。
作用如下:
基础性能测试
录屏回放
一机多控

指标:(CPU、内存、流畅度、流量、电量、启动速度、稳定性)

内存:

Private dirty(私有内存):进程独占内存,也就是进程销毁时可以回收的内存容量。
PSS(实际使用内存):
将跨进程共享页也加入进来,进行按比例计算PSS。这样能够比较准确的表示进程占用的实际物理内存。
问题:
在这里插入图片描述

内存泄漏:
内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。
内存溢出:
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory
memory leak会最终会导致out of memory!

CPU

一般公司回定义一个基线,不要一直超过基线就是没问题的。
没有基线一般为80,经常超过90就有问题了。
在这里插入图片描述

问题:手机发烫,页面卡顿,电量消耗快

流量/电量

流量测试:必须要在真机上测试,还要有流量卡。
电量测试:必须要在真机上测试。
问题:
使用了多长时间,消耗了多少流量。
使用了多长时间,消耗了多少电量。

流量优化:
1、数据压缩
2、不同数据格式的采用
3、控制访问频次
4、只获取必要的数据
5、缓存机制
6、针对网络类型设置不同的访问策略

启动状态

冷启动:APP离线的状态下启动
热启动:AP!后台运行的状态下启动
格式:adb shell am start -W包名/Activity名(com.tpshop.malls/com.tpshop.malls.SplashActivity)
在这里插入图片描述

流畅度

帧数:
大脑反应是连续的(10-12帧)
流畅(至少24帧)
流畅最佳(60帧)

稳定性

通过长时间对应用程序进行无序操作,检验应用程序是否会出现异常。
问题:闪退crash、无响应、ANR等。
测试工具:Monkey
注意:性能数据监控。日志收集。

APP常用命令

ADB(Android Debug Bridge):是一个通用命令行工具,也是Android软件测试开发工作者常用的调试工具。
ADB可以用来ADB可以用来安装卸载软件、管理安卓系统软件、启动测试、抓取操作日志等

基本操作

命令作用
adb devices查看已连接设备列表
adb disconnect 手机IP断开连接设备
adb connect连接设备(手机和电脑处于同一网段)
adb start-server开启adb服务
adb kill-server关闭adb服务
adb shell pm list packages列出手机所有包名-3 第3方软件 -s 系统应用
adb shell dumpsys window 管道符 findstr mCurrentFocus列出手机当前窗口包名(安卓)
adb shell dumpsys window 管道符 grep mCurrentFocus列出手机当前窗口包名(mac/Linux)

安装/卸载操作

命令作用
adb install -r (APK路径)安装软件-r :如果apk已安装,重新安装apk并保留数据和缓存文件
adb uninstall app的包名卸载软件

清除缓存

命令作用
adb shell pm clear 软件包名清除缓存

停/启应用

命令作用
adb shell am start 软件包名/Activity名启动-W 获取启动时间 -S 启动前先强行停止 -R 重复测试次数
adb shell am force-stop (apk包名)停止

获取软件性能信息

命令作用
adb shell dumpsys meminfo 软件包名获取当前内存占用情况建议使用工具
adb shell dumpsys cpuinfo获取当前cpu信息建议使用工具
adb shell top -s cpu持续获取CPU信息模拟器使用:adb shell top -s 9

获取APP使用流量:
1.获取userId (返回数据为userId=)
adb shell dumpsys package 包名 | findstr userId

2.获取上行流量(返回数据单位bytes)
adb shell cat proc/uid_stat/userId(上面获取的)/tep_snd

3.获取下行流量(返回数据单位bytes)
adb shell cat proc/uid_stat/userId(上面获取的)/tcp_ rcv

Monkey测试(稳定性测试)

格式: adb shell monkey -p 包名 数字 -v >本地文件
注意:
-p:指定包名(所有命令都在此包内执行,如不指定,则在整个系统内执行)
-v:log详细程度(最高支持’-v-v-v’最详细日志)
–throttle:单步延时(每步操作间隔,单位毫秒)
–pct-touch:点击事件
扩展:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值