您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 功能测试 > 正文

功能测试之app测试要点提取与分析

发表于:2020-12-25 作者:大田 来源:博客园

功能测试

主要思路

根据需求编写测试用例,执行测试。单个功能(等价类、边界值、正常和异常)和交互功能。注意:功能测试点提取和用例设计方法都跟web测试一致,但是APP有-一些自己特性测试,也需要加到测试点中。

安装与卸载(正常+异常)

安装前:空间不足时是否有响应提示。

安装中:安装过程中是否可以取消,是否可以正常运行,空间不足响应提示

安装后:是否可以卸载(1)通过桌面卸载(2)通过软件设置卸载

常见bug:在ios手机上有个应用安装时未安全安装,终止安装后,未完成安装的应用图标一直显示在手机上,并且无法成功删除。

卸载是否支持取消功能,单击取消后软件卸载功能是否正常。例如:ios在卸载中不支持取消,安卓可以取消卸载。

安装完后是否自动删除安装包

重复安装:①提示版本已经存在、②直接覆盖安装但是能正常使用

软件更新升级--是兼容性一种

升级前:当客户端有新版本时,是否有更新提示。

升级后:更新后各个功能(新/老功能)是否能正常使用,更新后老数据存在并正常

非强制升级版:用户可以取消更新,老版本能正常使用,用户在下次启动app时,仍能出现更新提示

强制升级版:用户没有做更新时,退出客户端。下次启动app时。仍出现强制升级提示。

在线跨版本升级

1.升级后正常使用

2.选择的版本---用户使用量最多的版本----主流版本

升级测试策略

新功能能用

老功能优化

数据能用

bug修复升级,回归测试--老功能(回归根据项目时间安排、bug影响程度)--与老大沟通

登录测试

登录方式

用户名、短信验证码、指纹、二继码、 手势、语音、头像识别、第三方登录(微信、QQ ,微博 )--看软件支持情况

未登录用户

一些页面的操作.是否做了控制

点击某些资源,提示登录或者跳转登录页面

用户主动退出登录后 ,下次启动APP时,应该进入登录界面--参考成熟产品

切换账号登录

检验登录的信息是否做到及时更新

单点登录

不允许多点登录时,是否将原用户剔下线.且能够给出提示信息

允许多点登录时,提示信息;且确保数据库操作无误,每个端可以及时看到数据的更新

用户登录持续时间太久,账号信息会过期--过期时间多久

出现"虽然是登录状态,系统会提示用户没有登录

强制退出,并提示:账号信息过期.请重新登录

触屏及操作测试

触屏快捷手势:两指、三指滑动

长按、短按屏幕

手机横屏、竖屏测试

同时触摸不同的位置,同时进行不同操作--异常、闪退

查看客户端的处理情况,是否会crash--崩溃、闪退、ANR(application not response)--无响应

注意:需要跟开发和产品确认是否支持!

消息推送测试

开关设置

默认状态全部打开状态,客户端可以接受到推送消息

设置开关可以打开. 关闭; APP设置开关关闭时,客户端接收不到消息推送

手机客户端未锁屏时:

APP应用后台运行.消息推送是否可正常接收,且可以点击查看

APP应用前台使用.可以收到消息提醒.且点击可查看

手机客户端锁屏时:消息推送是否正常接收

登录状态

退出登录后 .是否接收push推送(根据需求来)

未登录用户再去登录:批量接收多条消息推送

当push消息是针对登录用户的时候 .需要检查收到的push与用户身份是否相符,没有错误地将其它人的消息推送过来

消息栏(通知中心)是否可以接收到消息提醒,且点击可查看。点击后消息栏中消失

UI界面测试

确保产品UI符合产品经理制定的原型图与ui设计效果图/切图一致

依据经验、用户使用习惯、参考其他成熟的产品,界面可优化的bug

一般涉及界面(如菜单、对话框、窗口和其他可视控件)布局、风格,文字是否正确,页面是否美观,操作是否友好。

如:安装APP后的加载页/动态视频显示,分享页面的产品logo显示

注意: UI界面测试和web思路基本一致

兼容性(操作系统、屏幕尺寸、分辨率)

在不同操作系统正常使用( Android和IOS) , 那么在这两个平台都要做兼容性测试;

每个平台的不同系统版本

Android版本:6, 7.8以及各个小版本

IOS版本:9、10、11. 12. 13.及其各个小版本

能否适配各种屏幕尺寸

Android系列: 4.5英寸。5.0英寸等( phone. pad )

IOS系列: 3.5英寸、4英寸、4.8英寸、5.5英寸 ( iPhone & iPad )

市场占有率最高 : https://tongji.baidu.com/research/app?source =index

分辨率适配:分辨率影响界面图标、文字大小,保证主流分辨率下页面显示完整,文字不被遮挡

特定用户指定要求

策略

兼容性测试一般覆盖: android系统手机,选取市面上主流手机就行,例如:小米,华为, vivo、 oppo等; ios系统手机就是6s、6plus、 7、8plus ,X, xS , 11,11plus

公司里有哪些测试手机,我就去测试哪些测试手机的兼容性测试界面测试

了解:云测平台,免费50款机型;安装、打开app、monkey、关闭app、卸载

安全性测试

中断测试

APP被手机行为打扰的情况: APP能否正常处理,保证数据正确性

主要对于核心功能存在实时数据交换的页面进行中断测试,除了确保中断过程中有合理处理:还需确保中断过后恢复正常

来电、来短信、锁屏解锁、断网重连、断电、低电量、前后台切换、app切换

手机端硬件上, 如:待机,插拔数据线、耳机、闹铃弹出框提示等操作

常见bug场景

爱奇艺视频播放过程中,微信通话/电话中断

正常: app暂停状态;接听完电话之后,恢复直播正常

异常: APP卡死。 音视频不同步

微信视频聊天,低电量提醒不中断,电话中断

正常:聊天不中断.关掉提示信息后.正常通讯。

异常: APP卡死/廟溃。微信聊天披强行断开

网络测试

测试2G/3 G/4 G/5G/wifi/热点网络的切换

例如从wifi环境切换到4G环境提示是否启用4G网络 ,会产生扣费,是否有提醒

测试有网/无网切换下应用的运行

有网到无网再到有网环境时,数据是否可以自动恢复,正常加载(网络中断重连)

无网络时,各种提示信息是否友好,数据本地化是否正确(比如提示当前已断开网络,请检查网络设置)

弱网测试(延时+丢包) ,关注弱网场景下超时是否有合理提示,且是否有重发机制--fiddler可以测

提交数据是否一直处理提交中,是否会有延迟,数据交换失败是否会有提醒;

数据多次提交(支付类app) ,是否只能被执行一次

最大尝试次数, APP是否正常工作

离线测试

应用程序在本地客户端会缓存一部分数据以供程序 下次调用。对于一些程序.离线状态下可以浏览本地数据。

对于离线(无网络)时,刷新获取新数据时,不能获取数据时能给出友好提示

离线下,退出APP再开启APP时能正常浏览本地缓存数据

离线下,切换到主屏幕再切回APP应用时可以正常浏览

离线下,锁屏后再解锁回到应用前台可以正常浏览

对于界面的数据不提供离线查看.需要给出相应提示且界面更新后无任何数据

安全测试--权限测试

扣费风险:包括发送短信、拨打电话、网络切换由WiFi转为自己流量,没有网络时能否提醒===友好提示

隐私泄露风险:包括访问手机信息、访问联系人信息等

是否允许访问相册、拍照开放权限 +不权限权限

是否允许录音

是否允许定位

是否允许接收通知推送

注意:默认情况下是开放的,需要提示用户选择!

注意

一般对于大多数非支付类App来说,安全并不是一个特别大的问题 ,只需要保证登录鉴权安全性即可。

没有安全性测试要求。可以不用考虑( sq|注入,安全扫描等)

性能测试

服务器性能测试 ,例如: loadrunnerJmeter工具(免费)

App各类功能性操作的响应时间(后台服务器的性能)

app客户端性能测试

App安装、 卸载的响应时间

CPU、内存、流量、电量的占用

专门的性能测试小工具,例GT(腾讯). Instrunments , emmage(android)、还有OneApm

压力稳定性测试(monkey) : 100000次操作 点击滑动按键(专项录播视频)

App反复进行安装卸载

其他功能反复进行操作

参考博客: https://www.cnblogs.com/tudou-22/p/9213748.html

关于APP测试的问题

1. APP的测试资源准备? ---了解

ios设备、android设备 (选取市面上主流手机产品)

支付宝/银联支付的项目,需要提前申请支付宝/银联账户等等

有秒杀专题的题目,需要规划秒杀时间表;

有优惠券使用的项目,需要添加优惠券数据;

2. APP测试的稳定性? --了解

了解什么是稳定性,这项工作一般是在软件产 品基本功能无缺陷后进行的一项测试工作。一般使软件系统满足持续运行模式,进行正常情况、临界情况的测试。看系统是否有异常。

一般使用monkey工具,向系统发送随机事件流,如按键输入、触摸屏输入、手势输入等,实现对软件的稳定性测试。

3、APP测试与web测试的区别? --- 理解记忆,面试概率比较高! ! !

相同点

同样的测试用例设计方法; --功能测试

同样的测试方法;都会依据原型图或者效果图检查UI ; --界面UI测试

测试页面载入和翻页的速度、登录时长,内存是否溢出等: - 性能和易用性

测试应用系统的稳定性-稳定性(性能)

不同点

app的中断测试:来电中断、短信中断、蓝牙、闹钟、插拔数据线、手机锁定、手机断电、手机问题(系统死机重启)

app的安装卸载升级:全新安装、升级安装、第三方工具安装/卸载、直接删除卸载

消息推送测试、手机授权测试。前后台切换、网络环境( wifi/2G/3G/4G/5G/无网络)

兼容性测试tweb项目考虑不同浏览器的兼容; app需要考虑手机不同操作系统、不同机型、不同屏幕等的兼容

4、app云测试平台:百度云测、testin云测等

http://www.open-open.com/ib/view/open1463526042631.html

testin云测。免费50款机型;安装、打开app、monkey, 关闭app、卸载

常见面试

web和app测试区别

android app和ios app测试区别----通过不同的系统会导致测试不一样

1、Android系统开源, iOS不开源 ,安全性; -推送消息( Android绕过系统, IOS不行)

2. Android版本特别多, IOS相对版本比较少; IOS不支持降级的

3、APP审核机制:应用市场, IOS必须平Apple store---审核周期长

4、操作习惯: Android-back , IOS home

5、安装卸载:安装包( apk ) --系统点击安装,IOS ---经过苹果签名, 正式版本通过appstore下载, 测试版本官方iTunes--获取日志 ,testflight--测试版本