由于之前一直参与WEB端、服务端相关的测试,来到360才第一次真正意义加入了移动端的项目中,有幸参与了移动端的测试,所以来记录一下web和移动两端的区别:
1、报bug
对于测试来说,比较重要的一个步骤就是报bug,在web端我们发现问题之后,可以利用系统自动工具或者其他截图工具直接截图,然后将错误的地方或者比较 重要的点进行标记,但是在移动端,截图相对来说就没那么简单了,因为这地方需要分为两个步骤,一是截图,二是传到电脑端(因为我们利用mantis记录bug 情况,报bug是在电脑端的)。关于截图,一般的手机都会有快捷键,传到电脑端比较笨的方式就是利用数据线,或者利用豌豆荚、金山快盘等同步工具,然后, 再利用画图等方式对图片进行编辑。
推荐工具:手机快捷键截图,手机助手
通过一段时间的学习和实践,关于报bug我有以下几点感受和建议:
bug主题:尽量使用简短的语言描述具体问题,尽量做到通过主题可以知道本antis记录的是什么问题。如果有多模块、多个子系统如主站、后台等同时参与测试,最好开始就标记是哪端或哪个系统、那个模块的问题。
环境及系统:移动端由于手机和版本较多,因为在bug的时候尽量做到每一个Bug都有是在什么系统什么版本下发生的,即使此问题与系统或浏览器的 版本没有关系。这样做主要有以下几个好处,一是假设问题与系统和版本有关系,则方便开发快速定位问题;二是,版本较大,问题较多时,方便测试人员快速验 证。因为假如是wap端的测试,一个人一般是在几个浏览器之间交叉测试,不可避免会存在忘记问题发生在哪个版本的情况;三是,通过这段时间的测试发现,有 些在测试环境发现并且已修复的问题,线上会出现(甚至是运行一段时间之后再出现),这时候假如之前bug记录的很详细,那测试人员是有”证据“说明这件事 情不是我们的主要责任,当然这样做的目的并不是为了推卸责任,而是有时候这样做是必要的;
如果涉及数据:发现问题记录的时候,尽量提供所在模块id、广告id等数据,尤其是一些特殊的、边界值等不太容易造的数据,以方便开发人员利用现有数据重现问题,节省时间。
2、测试环境设置
web端测试的时候只需要直接修改hosts,但是移动端设置起来比较复杂,比较简单的方式是电脑端设置代理,手机端直接连接代理。注意,手机和电脑必须连接 同一个网络。
请求及响应数据的查看,也需要通过代理的方式来查看。推荐Fiddler
3、测试方式--------兼容性
web端的测试一般都是主要使用一种浏览器,待系统基本稳定的时候,再去专门测试浏览器的兼容性。
但是,对移动端来说,这样的方式是行不通的,因为移动端主要分为安卓和IOS,另外还会有各种系统版本,而这出现的问题可能是不一致的,一致的问题主要是数据问题,这时候是需要后台处理的,所以我们测试的时候需要多个系统版本都重点测试,而不会出现先着重测试某一端的问题。
注:一般方式是在测试一端时,出现问题则立马查看另一端是否也有这个问题。
4、移动端的特性
移动端与web端相比较来说,移动端有很多自己的特性:
1)网络种类多
移动端有多种网络:无线网络、2G、3G、4G等,断网、网速较差及网络之间的切换时页面的显示等,这些对于移动端来说很重要。此外,在非wifi下,还需要注意网络使用量问题。
2) 间断问题
移动端有一个很重要的问题,一般情况下在使用软件的过程并不是长久的,这中间可能发生很多中断,如电话、短信、通知、断电等等,软件需要特殊处理这些特殊情况。
打开一个页面,或在操作的过程中(点击一个按钮后),将手机屏幕锁住,再打开时,应用能否正常处理。
3)屏幕的限制
图片及文字的显示;上传不同的图片尺寸显示是否正常;图片和文字一起显示时,效果如何。
操作区域;web端的应用,一般不会受 到屏幕的限制,而且通过鼠标操作更加准确。但是移动端由于屏幕较小,页面及按钮会受到屏幕大小的限制,再加上用户都是通过手指进行操作,一些按钮、选择框 等是否容易点击,多个可点区域位置较近时,点击部位稍微偏移,也许就会造成不同的结果,这种情况下是否可以达到预先的效果。
4)软件启动运行
移动端启动、卸载、升级几个特性,这是比较常见、也很重要的,比如升级时用户的数据怎么办,卸载后用户的数据怎么处理,卸载再安装用户登录数据的显示等。
5)手势
移动端还有一大特性,就是移动端有自己比较简单的手势,用户可以通过手势进行一个操作,比如左滑删除、右滑返回上一个页面、左右滑动图片等,软件需要对这个手势进行适配。