1、安装卸载

1)安装:安装需考虑测试机的系统版本

●安装涉及到的版本兼容: 安卓: 4.0版本 6.0版本 7.0版本 ios:8.0版本 10.0版本 11.0版本

●软件安装后是否可以正常运行,安装后的文件夹及文件是否可以写到指定的目录里。

●安装过程中是否可以取消

●安装空间不足时是否有相应提示

●如果应用需要通过网络验证之类的安装,需要测试一下断网情况下是否有相应提示

2)卸载:测试卸载后文件是否全部删除所有的安装文件夹,卸载过程中出现死机,断电,重启等意外的情况,待环境恢复后是否可以正确卸载,卸载是否支持取消功能,单击取消后软件卸载情况是否正常

2、版本更新

更新设置 后台/ZK配置

1)强制更新 不更新无法做其他操作

2)非强制更新 其他更新入口:如设置,个人中心

3)更新规则 :根据产品需求

4)点击【立即更新】后页面跳转

5)弱网更新

6)更新下载进度条

7)杀进程后,重新打开app查看是否提示更新弹框

8)更新过程中暂停,再继续下载更新,能够正常安装,启动

9)在线更新

3、适配

1)手机不同分辨率支持

2)手机不同厂家系统的支持:不同厂家会有不同android系统,例如:小米,华为,vivo等主流手机的支持

3)手机不同尺寸的支持:3.5到5.0屏幕在UI显示有区别,要支持最大到最小

4、登录

1)token失效:重新登录后,页面展示 ;token失效后,更换账号登录,是否出现数据错误模拟token失效 可借助Charles工具,但前提需要开发打接口响应时间较长的安装包

2)app杀进程重新进

5、app权限设置

一般启动app是需考虑app各项权限的使用,例如:相机,通话,声音,通讯录,地理位置,获取imei等权限,将相机权限关闭后,app能够正常启动,启动调用相机时,是否能正常弹框提示

6、交叉事件测试【中断测试】

1)操作软件时,来电话、短信、电量不足提示等外部事件

2)软件运行时,由前台切换到后台,再切回前台后,应仍可正常运行使用。

3)杀进程后重启APP,自动登录用户登录信息;

4)多个应用切换,不会出现异常;

7、操作类型测试

横屏测试,手势测试,home键,音量键,power键等。

8、网络测试

1)断网——重连:断网后提示网络连接不可用,网络恢复后页面正常;

2)网络切换:wifi——4G:不会出现异常;

3)弱网测试–通过代理的方式模拟弱网环境进行测试(fiddler可以设置延迟):接口响应时间超过10S,APP端则按超时处理;

4)热点模拟:连接手机共享热点或者FaceBook开源的ATC(可使用树莓派来搭建 ACT环境)

9、刷新测试

下拉刷新

10、翻页测试

上拉加载下一页

11、分享测试

1)一次分享(在APP内点分享按钮进行分享);

2)二次(多次)分享(从APP分享给微信/QQ好友后,微信好友打开链接后分享给其他人),要注意链接中的用户信息是否正确;

3)在浏览器中打开分享链接;

12、弹窗测试

1)首页弹窗;

2)完成某项操作后弹窗;

3)App更新弹窗;

4)一个页面多种弹窗;

13、Push测试

①检查push消息是否按照指定的业务规则发送 ;

②检查不接受推送消息时,检查用户不会再接收到push;

③如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到PUSH。在非免打扰时间段,用户能正常收到push;

④当push消息是针对登录用户的时候,需要检查收到的push与用户身份是否相符,没有错误地将其它人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。

⑤安卓用户,应用在前台/后台都能收到push。IOS用户,只有应用在后台时才能收到push,应用在在前台收不到push(开发也可以代码实现应用在前台也可以接收push);

14、异常测试

①APP运行过程中断网;

②APP运行过程中断电;

③APP在内存不足的手机上运行;

④清空数据或强制退出后,APP能否正常运行;

⑤长时间开机且开app,看是否会出现异常情况;

工具使用,性能及稳定性测试介绍:

1、app抓包工具 Charles&Fiddler

可实现Android和IOS侧网络抓包、拦截请求并重定向资源等功能。

抓包前,需要对测试机配置代理,具体操作步骤如下:

http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.htm

1).win+R调出命令弹窗->cmd→ipconfig查找本地ip地址

2).打开fiddler->Tools -> Fiddler Options ->Connections下勾选“Allow romote computers to connect”

3).进入手机设置页面,找到手机连接的WiFi,进行如下设置:

服务器为电脑本机的ip,端口为fiddler请求的默认端口号8888

如此,即可进行fiddler抓包测试啦!!!!!

app稳定性测试怎么做(一个完整的测试流程)(1)

2、app性能测试常见指标:

1)、内存

2)、CPU

3)、流量

4)、电量

5)、启动速度

6)、滑动速度、界面切换速度

7)、与服务器交互的网络速度

Android性能测试分为两类:

1、一类为rom版本(系统)的性能测试

2、一类为应用app的性能测试

①Android的app性能测试包括的测试项比如:

a.资源消耗

b.内存泄露

c.电量功耗

d.耗时

e.网络流量消耗

f.移动终端相关资源利用率

g.帧率

h.渲染等等….

②工具:GT、Emmagee、itest等(工具的原理都是基于调用android底层的一些api来获取到测试所用到的值)

③测试方法:

a.设计场景 :手工或自动化场景;

b.获取数据:可获取的数据包括:内存、cpu、电量功耗、hprof(内存泄露分析文件)、响应时间等等。。。。配合手工或自动化场景来获取

数据(最好多取几次而且每次配合不同的设备看平均值)作为最后的对比分析;

c.结果分析 :拿到数据后分析哪些模块的数据异常再去Check code定位问题的原因。

④Android系统的几种场景状态:

a.空闲状态: 指打开应用后,点击home键让应用后台运行,此时应用处于的状态叫做空闲;

b.中等规格和满规格状态:中等规格和满规格指的是对应用的操作时间的间隔长短不一,中等规格时间较长,满规格时间较短。

3、app稳定性测试

①安卓APP的稳定性常常使用monkey命令进行测试,通过随机事件流模拟人的操作,对检查程序的内存溢出、空指针有很大的作用。

②Monkey主要用来检测系统ANR及Crash等问题。

ANR的全称是application not responding,根据它的意思我们就能看出来是应用程序未响应,就像是我们在电脑上碰到的 程序未响应,一般电脑出现这种情况,可能是由于我们打开了很多应用程序,占用了大量的内存,或者CPU时间片被一个应用 程序长时间占用,不够分配,导致部分应用程序出现了无响应。

下图就是我们见到的APP无响应的时候出现的对话框,产生ANR的原因很多,但是只有在Activty中的ANR才会弹出对话框, 对话框有两个选项,一个是等待,一个是关闭程序供用户选择:

app稳定性测试怎么做(一个完整的测试流程)(2)

ANR产生的条件:

1、只有主线程才会产生ANR,主线程就是UI线程;

2、必须发生某些输入事件或特定操作,比如按键或触屏等输入事件,在BroadcastReceiver或Service的各个生命周期调用函数;

3、上述事件响应超时,不同的context规定的上限时间不同

ANR产生的环境:

1、5秒内无法对输入事件(按键及触摸)做出响应

2、广播接收器无法在10秒内结束运行

具备了以上三个条件,那么加上这两个环境,就会产生ANR了。