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

2020-11-03 10:16:41 浏览数 (2)

功能测试

主要思路

  根据需求编写测试用例,执行测试。单个功能(等价类、边界值、正常和异常)和交互功能。注意:功能测试点提取和用例设计方法都跟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--测试版本。

0 人点赞