确定设备和平台再动手

了解移动App的平台及所带有的功能设计,了解移动App的生命周期,面向的用户是什么群体,App支持和需要测试的设备及平台等,其中设备的硬件参数也很重要,包括屏幕尺寸、分辨率、像素密度等。

“移动”测试

移动App最大的特点就在于移动性,用户在任何时间任何地点都可以打开App使用,这意味着App对于不同网络,以及网络变化的情况都能进行处理。
不同的网络状态都需要测试,用户往往会在执行过测试的那些场景中发现我们没有发现的bug,这是因为测试人员所在的测试场景和用户的使用场景有所不同。用户是不会像测试人员一样一直在办公桌前,在网络环境很好很稳定的区域使用App。另外,不要以为App在不同网络环境下表现正常,在网络切换的时候就不会出现问题。

对于网络异常的提示信息也需要人性化的设计,如果只告诉用户“HTTP 500 Internal Error”这样的消息对用户来说不仅没有任何帮助,反而会加剧用户的挫败感和不满情绪。而在后台,则需要定时刷新,避免在网络恢复的时候,App依旧显示网络异常时的提示信息,也避免了用户需要不停手动刷新。

对于视频播放类的App,也需要验证在网络进行切换,比如wifi切换到4G或者3G网络时,对应播放的视频清晰度是否也会进行对应的切换。

请关注多任务和意外情况处理

不同于功能机的时代,在使用智能机时,经常会同时运行多个程序,需要测试人员在设计和测试App的时候考虑到App被别的程序或者用户切换到后台时,需要进行什么操作。

1,第一个场景
App在使用过程中用户接听到一个来电,App应该如何处理。App是否需要后台运行,是否需要在状态栏和通知栏显示信息,是否需要当用户挂机后显示之前的状态还是刷新。不同App需要有不同的处理。

2,第二个场景
不同App之间的切换,打开App的速度是否会变慢,以及切换时的动画是否出现卡顿。当App关闭之后,被重新打开的时候,App响应速度也是需要考虑的

3,需要注意的场景
有种场景需要单独注意:对于在具备同样功能的App,尤其是具有视频和音频播放功能的App之间进行切换时,需要注意它们之间的播放控制是否会对另外的App产生影响。同时,App被切换回当前应用时是否刷新,也会因App后台数据是否有可能改变而有所不同。

4,硬件的影响

硬件也是影响到App多任务操作的因素,最常见的例子有:当我们插着耳机听音乐,突然耳机拔掉,这是App并不会通过扬声器播放声音,而是会暂停音乐的播放。

除了耳机,锁屏键和Home键也会影响App的运行。锁屏时需要锁屏键关闭屏幕后,App是应该继续运行,还是等待屏幕恢复之后再运行;解锁时,App是停留在当前的子页面,还是回到App的主页面;前台运行App,等待屏幕进行休眠时,点击解锁键,观察App的表现。

Home键被用作切换App到后台。测试人员可以观察App在被切换到后台1分钟、5分钟、10分钟、30分钟后再被重新打开的时候是如何表现的。这种情况下页面的信息显示是怎么样的。

另一种App中断也要考虑,就是Android设备上SD卡被拔除的情况。对于允许把数据或者App本身存放SD卡的设备,SD卡的拔出意味着读写App数据甚至App本身的运行都不存在。所以设计App的时候也不要使App能存储到SD卡。

关避免手势冲突

测试人员同样需要了解移动App的设计。iOS平台上常使用:从屏幕左侧边缘向右滑动,从屏幕右侧边缘向左滑动,从屏幕顶部向下滑动,从屏幕底部向上滑动,按住屏幕向下滑动,在图片上双击,两根手指分开和捏合,两根手指按住屏幕旋转,四根手指向上/下滑动,四根手指向左/右滑动,五根手指聚拢的捏合操作,摇动设备,长按屏幕等。 

值得注意的是,在iOS多任务处理的页面,通过3根手指上滑,可以同时关闭3个当前显示的App。在iPad上,在任何App中或者主屏幕上,使用4根手指向上滑动,会呼出iPad上的多任务处理界面,在该界面上用4根手指向下滑动,就能够关闭该界面。在iPad中,打开任何App,使用4根手指在屏幕上向左滑动,可以切换到最近使用的 App,再向左,可以继续切换到上一个App。向右滑动则切换到下一个App。在iPad中,5根手指聚拢的捏合操作,能够在任何一个App中返回主界面。

在iOS 7自带的短信、电子邮件、日历、便签盒联系人这些App中,当输入了一串有错的信息,想从头重新开始输入,只需要左右摇晃设备,屏幕就会出现一个弹出框,从而可以选择是否要撤销当前的输入。

关注用户体验

测试人员不仅需要关注App的功能性需求,对于非功能性但关乎到用户体验的需求,更需要关注。这就要求大家在测试时思维更加开放一些。

1,横竖屏幕测试
首先需要被测App支持横竖屏,其次,要解决横竖屏切换的问题以及App中的某些页面限制了屏幕显示的方向。

2,WebView测试
需要注意在App中嵌入了WebView的页面的显示。对于WebView的显示,除了需要关注它对横竖屏的影响,还需要关注它在不同设备上的显示。因为不同设备会有不同的屏幕宽度和高度,所以WebView的显示效果通常也是千差万别。

3,规范和习惯

对于支持多个操作系统平台的移动App,也需要在不同的操作系统上,遵循当前操作系统的设计规范和使用习惯,而不要一味地为了自己各个App的一致性而破坏操作系统的设计规范和使用习惯。不同操作系统有不同的特征,因此也有自己独特的设计和使用习惯,测试人员在开发和测试移动App的时候,都需要尽可能遵循这些规范,减少用户的学习成本,提高使用App的便利性。

4,关注用户体验
测试人员不仅需要关注身体健全的用户,也需要关注残障人士。在当前主流的操作系统中,都带有“辅助功能”的选项,例如放大字体,反色,放大,文字转语音,VoiceOver这些功能。

5,其他需要关注的用户体验的小细节
例如,不同颜色的背景下,状态栏的显示是否正常。需要注意测试在App不同颜色的页面上,状态栏的颜色显示是否正常,是否做到了沉浸式设计。
当用户快速点击App中的按钮等可操作控件时,会出现什么样的效果?对于不支持多点触摸的App,也需要测试App对于多点触摸的支持。我们不能限制真实用户是怎么使用App的,只能模仿真实用户对App多点触摸的支持进行测试,尤其是对于游戏类App的测试。

 

用户体验就是在细节上才能体现出App的质量和对用户的重视程度,而且界面也是用户最容易关注到的地方,所以测试人员在测试中一定不能忽视这些细节。