移动APP测试基础培训

一、安装卸载android

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

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

●软件安装后是否能够正常运行,安装后的文件夹及文件是否能够写到指定的目录里。 浏览器

●安装过程当中是否能够取消 服务器

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

●若是应用须要经过网络验证之类的安装,须要测试一下断网状况下是否有相应提示网络


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


二、版本更新函数

更新设置 后台/ZK配置
工具

1)强制更新   不更新没法作其余操做

2)非强制更新  其余更新入口:如设置,我的中心

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

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

5)弱网更新

6)更新下载进度条

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

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

9)在线更新

 

三、适配

1)手机不一样分辨率支持

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

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

       

四、登陆

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

2)app杀进程从新进


五、app权限设置

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


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

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

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

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

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


七、操做类型测试

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


八、网络测试

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

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

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

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


九、刷新测试

     下拉刷新


十、翻页测试

     上拉加载下一页


十一、分享测试

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

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

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


十二、弹窗测试 

1)首页弹窗;

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

3)App更新弹窗;

4)一个页面多种弹窗;

 

1三、Push测试

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


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


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


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


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

 

1四、异常测试

①APP运行过程当中断网;
②APP运行过程当中断电;
③APP在内存不足的手机上运行;
④清空数据或强制退出后,APP可否正常运行;
⑤长时间开机且开app,看是否会出现异常状况;

   

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

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


一、app抓包工具  Charles&Fiddler

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

抓包前,须要对测试机配置代理,具体操做步骤以下:

https://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)、CPU

3)、流量

4)、电量

5)、启动速度

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

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

 

Android性能测试分为两类:

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

二、一类为应用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.中等规格和满规格状态:中等规格和满规格指的是对应用的操做时间的间隔长短不一,中等规格时间较长,满规格时间较短。

 

三、app稳定性测试

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


②Monkey主要用来检测系统ANR及Crash等问题。
ANR的全称是application not responding,根据它的意思咱们就能看出来是应用程序未响应,就像是咱们在电脑上碰到的 程序未响应,通常电脑出现这种状况,多是因为咱们打开了不少应用程序,占用了大量的内存,或者CPU时间片被一个应用 程序长时间占用,不够分配,致使部分应用程序出现了无响应。
下图就是咱们见到的APP无响应的时候出现的对话框,产生ANR的缘由不少,可是只有在Activty中的ANR才会弹出对话框, 对话框有两个选项,一个是等待,一个是关闭程序供用户选择:



ANR产生的条件:
一、只有主线程才会产生ANR,主线程就是UI线程;
二、必须发生某些输入事件或特定操做,好比按键或触屏等输入事件,在BroadcastReceiver或Service的各个生命周期调用函数;
三、上述事件响应超时,不一样的context规定的上限时间不一样


ANR产生的环境:
一、5秒内没法对输入事件(按键及触摸)作出响应
二、广播接收器没法在10秒内结束运行
具有了以上三个条件,那么加上这两个环境,就会产生ANR了。


本文分享自微信公众号 - 无量测试之道(gh_858a1aa25a6d)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索