如何作好APP功能测试?



1、如何作好app的测试工做?

22 个回答



斗魂大陆

凡是可能会出错的地方,必定会出错!--墨菲法则

腾讯有个平台能够实现适配兼容、服务器压力、性能测试、弱网络、耗电量测试等等,挺全面的。WeTest腾讯质量开放平台,本人亲测过体验还不错。
下面说一下测试一个App具体包括哪些方面,以及每一个方面的关键点。

测试人员常被看做bug寻找者,但你曾想过他们实际是如何开展测试的吗?你是否好奇他们究竟都作些什么,以及他们如何在一个典型的技术项目中体现价值?本文将带你经历测试人员的思惟过程,探讨他们测试app时的各类考虑。本文的目的在于揭示测试人员的这一思惟过程,并展现他们一般所考虑内容的广度和深度。

本文是基于个人工做经验而写的,做为一名敏捷软件开发团队的测试经理,我一心投入测试工做。在与其余app测试专家交流的过程当中,我深入了解到app测试工做的困难。在平常工做的摸索中,我将如何作好app的测试归结为以下内容。

(1) 非功能测试

app测试的一个重要方面是app的非功能需求。移动app在推出市场或进行进一步开发前,测试人员有必定的职责作该类需求的跟踪工做。

早期开发阶段要进行的第一个测试应该是实用性测试。一般是由alpha用户或同事进行的。走进一家咖啡馆或餐厅,问问里面的人他们的app使用状况。让他们看看现阶段开发的第一个版本并收集反馈,看看用户是否能很好地使用新功能,以便得出第一印象。

(2) 功能测试

每项开发的新功能都须要进行测试。app测试中功能测试是一个重要方面。测试人员应该要进行手动测试和后期的自动化测试维护。刚开始测试时,测试员必须把app当作"黑盒"同样进行手动测试,看看提供的功能是否正确并如设计的同样正常运做。除了经典软件测试,像点击按钮、提交订单看看会发生什么,测试员还必须执行更多功能的app测试。

除了整个手动测试过程,测试自动化对移动app也很重要。每一个代码变化或新功能均可能影响现存功能及它们的状态。一般手动回归测试时间不够,因此测试员不得不找一个工具去进行自动化回归测试。如今市面上有不少自动化测试工具,有商业的也有开源的,面向各个不一样平台,如Android,iPhone,WindowsPhone7,BlackBerry以及移动Webapp。根据开发策略和结构,品质管理测试专家需找出最适合他们环境的自动化工具。

(3) 客户端性能测试

一个App作的好很差,不只仅只反应在功能上。被测的app在中低端机上的性能表现也很重要。好比:一个很好玩的游戏或应用,只能在高端机上流畅运行,在中低端机上卡的不行,也不会取得好的口碑。

关于App的性能测试,咱们比较关注的参数有:CPU,内存,耗电量,流量,FPS。同时也需关注一下App的安装耗时和启动耗时。

目前你们可能比较困惑的一个问题,多高的CPU,内存,耗电量,流量,FPS才算是符合发布的值呢?这里能够告诉你们,能够参考精品游戏的一些数值,将本身研发的app与业内精品的app数据作对比。

(4) 适配兼容测试

市面上目前存在的移动设备五花八门,下图列出过去12个月的移动设备品牌占比状况。



App在通过功能测试后,也需对其进行适配兼容测试须要检查的项主要有如下几点:

(a) 在不一样平牌的机型上的安装、拉起、点击和卸载是否正常;

(b) 在不一样的操做系统上的安装、拉起、点击和卸载是否正常;

咱们在实际测试中,经常会遇到下列问题:

(a) 在某个平牌某个系统上,app安装不上;

(b) 在某个平牌某个系统上,app没法拉起;

(c) 在某个平牌某个系统上,app拉起后无响应或拉起后黑屏、花屏;

(d) 在某个平牌某个系统上,app没法顺利卸载;


腾讯WeTest这个产品能够实现多款热门机型的适配兼容测试。



(5) 弱网络测试

App在使用的过程当中,不免会遇到弱网络环境,例如在公车上、在地铁里。在这种状况下,经常会出现网络抖动、上行或下行超时,致使应用中出现丢包。

做为一个测试人员,咱们要对app在上线前作必定场景的弱网络环境模型,并查看app在弱网络环境下是否存在某些未知的问题。下面是咱们经常使用的弱网络环境场景:

(a) 3G弱网络信号场景模拟;

(b) 市区低速移动场景模拟;

(c) 郊区高速移动场景模拟;

(d) 请求回应超时_上行超时场景模拟;

(e) 请求回应超时_下行超时场景模拟;

(f) 网络抖动场景模拟;

这个工具也能够解决



(6) 耗电量测试

App在手机上的表现,除了功能外,app是否耗电,也是测试过程当中重点要关注的一项。手机设备在满电的时候,这个App能玩多久;App每小时的耗电是多少;App在某个场景挂机10分钟耗电量是多少;这些都是咱们平时在耗电量测试中比较关注的点。

(7) 协议测试

模拟客户端直接发送协议包给服务器,看看服务器是否有必定的校验,认不认客户端发过来的数据。协议测试,主要是为了处理用户发送恶意协议到服务器,骗过服务器的校验。

(8) 安全测试

App在上线前,都须要作详细的安全测试。安全测试主要为了检测应用是否容易被外界破解;是否存在被恶意代码注入的风险;上线后外挂的风险高不高等。

(9) 服务器性能测试

服务器性能测试,主要包含单机容量测试和24小时稳定性测试。单机容量测试,能够检测到单机服务器在90%的响应时间和成功率都达标的前提下,可以承载多少用户量。使用特定游戏模型压测24小时,服务无重启,内存无泄漏,而且各事务成功率达标。

这个能够在WeTest入口预定。



(10) 服务器容灾测试

服务器容灾测试,主要指某个服务进程奔溃掉后,是否具备自行恢复能力。好比游戏逻辑进程消失后,是否会自动拉起;memcached崩溃时,是否会从新启动,是否会对全部玩家有影响。这些都是app测试过程当中须要考虑的因素。

(11) 中断测试

针对智能终端应用的服务等级划分方式及实时特性所提出的测试方法,如:App在前台和后台运行状态时与来电、文件下载、音乐收听等关键运用的交互状况测试等。测试电话,短信,彩信,微博或其余通知进来时app的反应。

(12) 上线后期的舆情跟踪

新的app上线后,用户对此应用的评价,存在哪些测试期间未察觉的Bug,论坛上对于该应用热门的帖子有哪些,应用商店中该应用的口碑如何等,都是app在上线后,测试人员须要关注的点。若须要测试期间未发现的Bug,须要新测试服进行确认并根据该问题的修复。


很高兴看到腾讯在研发生产资料,而不是产品,好的企业应该积累出本身的工具链,并造福生态圈!最后祝你们都能把手下的app测试工做作好!安全

相关文章
相关标签/搜索