① App测试中需要考虑网络因素的测试点
当前app的网络环境比较复杂,在网络制式上就存在2G、3G、4G网络,以及越来越多的公共wifi。不同的网络环境以及网络制式的差异,都会对用户使用app造成一定的影响。如果app没有针对各种异常的网络状况进行兼容处理,那么用户就很有可能在日常使用中碰到app闪退、ANR、数据丢失等严重的问题。功能测试对于功能测试,要考虑在各种网络制式下app的功能体验。虽然现在4G网络越来越普及了,但是作为测试,依然要考虑到所有可能发生的场景。虽然不可能把所有网络制式都覆盖到,但是我认为还是有必要在弱网环境下,针对app开展基本的功能测试,保证app在弱网环境下能够把整个业务流程跑一遍。弱网环境下,有时候会对app的功能造成严重的影响,例如:在弱网环境下,同步跑步数据,如果app没有针对这个方面做处理,那么很可能导致app把设备的数据同步过来,但是却无法上传,如果开发人员没有针对这种情况做处理,那么这段数据就可能丢失。响应时间响应时间这个指标在性能测试中出现比较多,对于用户体验以及app的市场占用率都有很重要的影响。安卓手机一般超过5秒钟无响应就会报ANR的错误,ios手机响应时间过长也会报错。据调查显示,用户能够忍受的最佳响应时间是2秒以内,超过5秒无响应的话,一般性子比较急躁的用户很可能就会直接退出页面了,如果超过10秒无响应,很多人都会选择杀掉app。app经常处于无响应或者响应时间过长的状态,会导致大批的用户转移到竞争对手的产品上。异常测试异常测试是指验证app针对各种网络异常情况是否做出了容错处理,这里面包括异常提示信息、出错容错机制、超时判断处理机制、出错以后自动重连等。从一个app的异常测试结果,就可以看出开发人员对这款app投入的精力以及负责程度。无网测试无网测试测试主要针对断网的情况下,app各个功能是否受到影响。例如:公司的手环app在开始某个版本出现断网以后,进入周数据统计页面,从服务器请求数据时出现闪退问题。弱网UI测试弱网的情况下,app很可能出现UI刷新不及时或者不刷新的情况,这时候就可能会导致呈现在用户面前的是一个残缺的页面。偶会也会导致出现页面UI元素错乱的情况。网络切换测试现在的公共wifi越来越多,用户使用app中很可能发生这种情况:用着4G网络时, 走上十几米突然连上一个咖啡厅的公共wifi,再走一段距离又断开了连接重新切换到4G模式。针对这种情况,我们在app测试过程中也要考虑到不同的网络切换是否会引发一些问题。Test Bird
② 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) 适配兼容测试
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功能测试都测试哪些
APP功能测试是指测试你这个APP的所有功能点是否能够验证通过。APP功能测试的测试用例设计需要回结合产品需求和答开发设计文档。这里以测试微博APP为例:
发布微博,从界面上看有文字长度,是否添加图片,是否有话题,是否有@别人等等。2. 发布微博的操作是否符合用户体验,选择照片,选择要@的人是否符合人类的认知3. 发布微博这样一个动作肯定是和服务器交互的,那么需要考虑到各种网络因素4. 发布微博是调用哪个api?有哪些参数?失败了会怎么样?是否会自动重试?5. 发布微博的控件是否有native的还是webview,还是混合的结构?6. 考虑一些android特别的交互,比如home,menu,长按home,发布到一半来电,关机,待机等7. 发布微博,从java而言调用了什么方法做请求的?httpclient?怎么判断成功,失败了又是什么逻辑
以上只是做个简单的举例,做一个好的APP功能测试最主要还是要去深入了解产品,在功能测试时,一定要找有经验的测试人员或测试平台来做,比如TestBird
④ 拿到一个APP后主要的测试项有什么
我在黑马程序员学习软件测试时,当时我们做了APP的测试,主要我主要考虑的有:逻辑测试, 功能测试,界面测试,兼容性测试,弱网测试,压力测试,中断测试,漏洞检测这些东西, 实际操作时根据不同情况和需求调整:1. 逻辑测试:主要走业务流程,如果是一个电商,就需要把基本的购买,付款,发回收货,评价等等流程走一下,看一下能不能走通,有没有功能遗漏2. 功能测试: 把APP中的主要业务流程中的功能重点覆盖,甚至能点的所有都点一下, 看一下有没有问题或者这卡死,闪退3. 界面测试: 检查页面的美观和同原型的一致性4. 兼容性测试: 这个是APP测试中最重要的一环, 针对不同机型,和不同系统做适配, 确认APP不会有兼容问题的页面错乱和崩溃5. 弱网测试: 重点观察不同网络环境下的用户使用体现和一些提示信息和页面是否正确6. 中断测试: 主要看APP正常使用过程中,强制关闭,断电断网,电话(电话/语音电话/视频电话)等的恢复情况7. 压力测试: 密集操作和大量用户场景下app的流畅度8. 安装卸载升级: APP应用的特殊性造成,用户对其安装卸载升级操作比较频繁,所以需要重点验证不同场景下的正确安装卸载升级