手机游戏测试总结

手机测试的经验总结

查看( 35 ) / 评论( 0 ) / 评分( 0 / 0 )

1.在提交高通前务必要检查文档与实际程序的功能表现是否相同,比如说,游戏增加了密技功能,在文档中就要有相应的说明。

2.在模拟器上图像处理速度较快,所以不会出现游戏中移动的图像变模糊的现象,但是由于手机的分辨率相对低,所以一般在模拟器显示正常的速度,到了手机就应该让开发人员适当调慢,否则将会出现移动物体变模糊不能清晰辨认的情况。

3.有些游戏使用了很多的图片资源,当在两个界面之间(例如在主菜单界面和帮助界面之间,主界面菜单是由许多图片组成的,帮助界面是一个html文件的浏览显示),连续按若干次使其在两个界面之间连续切换,会出现图像重叠现象,其原因是手机的CPU处理速度跟不上刷新速度,而且主界面的图片资源一直没有释放,导致图像的残留。一般可模拟Grinder把这些类似的问题测出来。

4.是否正确处理来电。如果没有适当正确的来电处理,有些来电会使游戏画面变乱,有些直接退出,甚至死机。Brew程序员往往会在来电处理后的恢复中忘了对游戏音乐的处理,比如说原先选择了关闭音乐的,来电处理后音乐又自动开始播放了。有时候需要模拟两个或以上的连续的来电以发掘程序深层的逻辑错误,这些错误大多是来电处理后的恢复过程的错误。另外短信,电量不足等一些事件警告的出现也有可能导致程序出错,也要作出相应的处理。

5.注意确保游戏说明和帮助的完整清晰,检查系统提示信息,确保在游戏中出现的文字的正确拼写,没有错别字。要尽量用敬称“您”而不用“你”。

6.标题,菜单等的文字显示要尽量用小字体,尽量缩短文字,能用简短文字说明清楚的就不要用长句,例如“按2,4键可以左右移动图片”就可改成“按2,4键左右移动图片”,或者甚至改成“按2,4键移动图片”。因为不同的手机显示屏幕宽度不一样,在一款手机上显示正确不代表在其他款式都能正确显示,然而用小字体,短句子就能适应大多数手机的屏幕宽度。

7.线程的处理,有些游戏设有多个线程,如果没有处理好线程的调用释放问题的话,就很可能出现线程争用的问题。例如一个宠物游戏,宠物死亡后,会调用一个新的线程循环播放哀吊音乐,有些程序员由于粗心大意忘记了释放这个线程,当重新开始游戏时,就会出现这个线程播放的音乐与游戏过程的背景音乐交替播放的情况。

8.文件处理。当涉及文件读写操作的时候,要特别注意测试文件操作带来的内存问题。比如说,有些游戏需要用文件记录游戏最高分或分值等,要注意测试第一次运行程序时的退出操作(此时没有最高分记录或其他分值记录),程序是否申请了文件指针或文件资源而没有释放。如果是的话,则会导致退出时的内存错误。另外对于Brew,应用程序的文件包中不得包含零字节的文件,每个文件至少有一个字节,同时还要求不能包含无用的文件或文件夹,目的是节省手机上有限的存储资源。

9.颜色的搭配,有些背景色跟文字或图片的颜色搭配在模拟器可以较清晰的显示出来,但是到了手机由于其分辨率问题就不那么明显了。颜色搭配要以清晰美观为基础,还要适当考虑游戏的种类,用户心理等问题。

10.用模拟器模拟网络不通的情况。目的是测试软件的网络连接,网络资源请求,缓冲区存储等模块的性能,看看内存是否有正确释放等。可以通过断开网络连接的方法模拟手机网络不通的情况,具体就是把本地连接的状态设成禁用或者直接拔掉网络连接线。

11.数据请求或传输等需时较多的过程要确保有提示界面,最好有动画显示数据在传输过程中,请用户耐心等待。另外要注意在这个过程中对重复按键予以忽略,因为等待时间过长或响应迟钝时,用户趋向于重复按手机按钮。

12.不要忽略了对后台数据正确性的测试。输入特殊字符或异常字符,看后台有没有相应的容错处理(当然这些也可由手机端处理)。多个客户端同时发出请求,测试后台的多线程处理能力,看能同时处理多少用户的同时请求,平均响应时间是多少,是否在可接受范围内。

13.来电,短信,电量不足等一些事件警告的出现也有可能导致程序出错,也要作出相应的处理。有些网络程序由于设置了数据通讯时不处理来电,这时候就要在低电量情况下测试,用电量不足的警告事件来触发程序的suspend和resume处理事件,看是否做了恰当的处理。

以上经验同样适合开发人员参考,以便尽量避免类似问题的出现。

 

第二篇:手机游戏测试的一些总结

关于手机游戏测试的几点总结

1、游戏安装:

智能机可能在安装上不会出现比较明显的问题,小容量机就比较明显,受制于容量和处理器,在安装的时候很容易会造成死机,或者安装成功后不能游戏。还有一类问题,就是当测试机已经有一个此游戏的老版本,再覆盖安装新版本的时候,可能会出现一些奇怪的问题,不过发生几率比较低。

2、游戏开始:

LOGO SCREEN必须要有,作为一个公司的品牌,这个是必须的。如果是腾讯渠道的项目,那么开始游戏的时候需要有腾讯的LOGO(不过腾讯的LOGO一直在变 [点击图片可在新窗口打开] )。开始游戏之后,游戏主页面应该包含 开始游戏(start)、继续游戏(continue)、设置(option)/音乐(music)、帮助(help)、关于(about)、退出游戏(exit),这些缺一不可。

开始游戏,点击后开始新游戏。

继续游戏,从上次存档点开始继续游戏。

设置或者音乐项,主要是此项的功能就是为了开启和关闭游戏音乐,有可能会附带其他功能,大多数游戏会只有一个开始关闭音乐功能,所以可能会直接写成音乐,或者打开/关闭音乐,这要看每个公司自己的定义。

帮助,主要内容就是游戏世界观介绍,游戏按键说明。其中游戏按键说明必须与游戏中的按键完全相同。

关于,主要内容是关于此游戏制作公司等相关信息,这要看每个公司自己的定义了。

退出游戏,点击后游戏关闭。

3、游戏中:

这个就是一个很庞大的问题了,RPG、动作、运动、射击……等等各种类型的游戏都有自己不同的测试内容。

RPG类:游戏内容:主线任务、支线任务、物品、技能、宠物(如果有的话)、数值

图像:像素残余、像素残缺、图像出屏

音效:音效流畅、可以正确的打开及关闭音效

文字:文字出屏、错别字、敏感字

动作类:游戏内容:人物属性,技能

图像:像素残余、像素残缺、图像出屏

帧速率:好的公司会在设计说明中规定游戏的帧速率值,确保游戏的流畅性,可是却缺少工具来衡量实际的帧速率,只能靠感觉了。如果觉得游戏卡,就报帧速率过低的错误也行。

4、游戏后:

此阶段是指游戏通关后的情形。

结束画面。

5、计费点:

国外的项目基本上都是下载付费的,跟国内的百宝箱差不多,这块其实就不用测试人员去测试了。国内项目就不太相同,现在很多项目都使用了游戏中相关功能开通收费的形式,我们称之为计费点。高级物品,钱,经验,关卡开通等等。每次在使用一个计费点模块的时候,手机都会发送一条短信,收到下行后,游戏就会开通这个计费点的功能。比如说你想购买10000金币,当选择购买后,游戏会最小化,然后手机发送出一条短信,此时,游戏会自动最大化,并提示你购买成功,然后你就获得10000金币。

流程是这样的,那么问题就来了,手机在频繁的获取计费点时,游戏来来回回的最小化、最大化,可能会出问题。

6、广告:

国外项目有些会在游戏开始页面加入广告,点击后会打开一个WAP页面。此模块测试目标就是频繁的打开页面会不会引起游戏死机,页面是否能打开。

7、中断:

中断是指在游戏运行的过程中,对游戏进行停止动作,例如短信,来电等,使游戏暂停。从而验证游戏的稳定性。

中断操作:

在游戏从手机软件列表点击进入开始起,一直到游戏完全退出,都算游戏过程,此过程中,游戏中的任何一屏,都应该可以中断,平且正常返回,且不会出现任何问题。游戏在中断后,应该会显示出一个暂停屏,此屏一般为黑底,提示信息为:“press center/5 key to continue” 或“按中心键/5键继续”。按中心键后游戏继续运行。

中断的含义就是游戏在遇到其他事件时,能够暂停,所以这个很重要。在赛车类游戏中,中断后的游戏不可继续计时。

 

第三篇:手机软件测试经验总结

手机软件测试总结

沙晶晶

一个合格的手机软件测试工程师要掌握的东西是很多很多的。在我个人理解中,一个合格的高级手机软件测试工程师应该具有最基本的两点知识:软件测试理论知识和一定的开发技能。

1. 软件测试理论知识

这个不用多说,软件测试工程师必须要掌握的,软件测试如何融入整个开发的流程,什么时候介入,什么时候结束,如何搭建测试环境,如何设计测试用例 (包括设计测试用例的方法,如:等价类划分,边界值法等),如何使用测试工具,还有测试领域专用的一些术语等等。

2. 开发技能

合格的高级软件测试工程师,编程技能不可缺少。在手机测试中,比如自动化测试,完全可以开发工具来实现自动化测试。所以掌握一门扎实的编程语言,C或者C++还是非常重要的,能够自己开发测试工具,也是一个高级手机软件测试工程师应该具备的素质。我认为我们不应该只是单纯的发现bug,而应该从更深层次的去探究这个 bug的原因,甚至可以定位bug。

另外从技能上讲,面向不同的技术方向,像操作系统、网络、通信等都要从专业上深入了解。这些是除去工作时间外必须去加强充电的部分。有这些做后盾,做起事来也会事半功倍。

另外手机测试中应该注意的问题

首先是正确性测试,正确性测试又可称为功能性测试,我们首先就是要测试所有功能是否都已实现、正确、是否满足需求规格说明。

正确性测试还要考虑到用户界面,软件产品始终是关注软件使用者——客户的体验,手机屏幕小,界面有限,所以手机软件的用户界面更需有一定的规范和标准:正确性、一致性、直观性、实用性、灵活性、舒适性便是最基本的标准。

正确性一般比较明显,比较容易发现,例如某个窗口没有被完全显示,文字没有对齐,文字拼写错误,密码输入时没有以*的形式自动屏蔽等。

一致性包括软件自身的一致性以及手机操作系统或与其它软件的一致性,具体表现在使用的术语,字体是否一致,界面的各参数风格是否前后一致等。特别也要注意中英

文版本下界面风格是否一致,是否有中英文混合的情况。

直观性要求软件功能特性易懂、清晰,用户界面布局合理,对操作的响应是否在用户的预期中,如用户做了非法操作后,界面是否有错误的提示信息,提示信息是否完整,是否明确,是否能让用户立即明白问题所在。

实用性不是指软件本身是否实用,而仅仅是指具体的某个特性是否实用,是否有助于用户执行该软件的功能,手机软件是安装在手机上的第三方软件,手机不同于PC机,功能没有PC机强大,在手机上实现的功能也不同于在PC机上的功能,所以功能不应复杂,无用的功能只会增加程序的复杂度,产生不必要的软件缺陷。但是个人觉得有些必要的功能还是一定要有的,如:随时可以退出应用程序这个功能还是很必要的,用户进入多层之后,若想退出应用程序,但是又要一层一层返回到最上一层才能退出时,也是一件很烦很头疼的事。

灵活性,按我个人现在的理解,具体表现在,如果多种状态之间的切换,例如界面的不停切换,操作步骤的复杂,增加了编程的难度,可能也会降低软件的可靠性,这时软件的灵活性将会大打折扣。特别是在我们测试触屏手机的时候,界面的切换经常会导致一些界面卡住,乱码,黑屏,死机的情况,所以我们在测带有触屏手机时,一定要注意到灵活性。

舒适性主要强调界面美观,色彩运用恰当,按钮的立体感以及增加动感动画等。例如颜色的搭配,有些背景色跟文字或图片的颜色搭配在模拟器可以较清晰的显示出来,但是到了手机由于其分辨率问题就不那么明显了。颜色搭配要以清晰美观为基础,还要适当考虑用户心理等问题。

除了测试软件的正确功能,及其更需要考虑一些异常的情况,异常的情况也分多种考虑,如下:

1、容错性测试

容错性测试是一种对抗性的测试过程。在这种测试中,把应用程序或系统置于异常条件下,例如输入特殊字符或异常字符,具体可以通过输入超过边界值的字符(这也相当于用例设计方法中的边界值分析法)看后台有没有相应的容错处理。手机客户端界面会给出什么样的提示信息。另外还要测试多个客户端同时发出请求,测试后台的多线程处理能力,看能同时处理多少用户的同时请求,平均响应时间是多少,是否在可接受范围内。

2、测试应用程序中的一个功能正在执行过程中,同时另外一个事件或操作对该过

程进行干扰。

例如:运用程序运行时,切换程序到外部,做一些与运用程序相关的操作,再切换到应用程序中,查看刚刚的操作是否对正在执行的运用程序有影响。另外来电,短信,电量不足等一些事件警告的出现也有可能导致程序出错,也要作出相应的处理。有些网络程序由于设置了数据通讯时不处理来电,这时候最好能在低电量情况下测试,看是否做了恰当的处理。我们需要测试一下这些干扰的冲突事件会不会导致应用程序core,手机死机、花屏等严重的问题出现。

3、我们一定要考虑到对手机存储空间满后的压力测试。

手机的内存空间资源是有限,不像PC机有着巨大的存储空间,我们很容易做到手机存储空间已满,所以我们一定要考虑剩余空间不足或存储空间为零的情况下,应用软件的运行是否正常?我们要在手机没有存储空间或达到最大的承载极限时,对手机软件可编辑修改的模块进行编辑修改,保存之后,并对手机软件进行任何操作测试,如果程序员不做相应的处理或者处理不好的话,很容易造成配置文件读写错误或无法写入,从而导致手机软件系统出现core掉或者手机出现死机、无法退出的情况。虽然手机本身在磁盘空间已满的情况下也会出现不少问题,我们的应用程序也无法避免,但是我们一定要确保我们的程序不会出现core,程序无法退出,手机死机等这些严重情况出现。

4、极限发散性测试

我个人经常喜欢说成是暴力测试或压力测试,我的做法是通过各种操作步骤或途径、异常或非法执行,站在不正常的用户角度,如快速按按钮或快速划屏、对某个功能做大量的重复性的操作等(如在登录过程中,不停的做登录和取消操作,不停地按几十下几百下),不把程序搞崩溃誓不罢休的暴力发散性测试,往往开发会狡辩与理论这是不正常的变态的测试,如果用户做此操作出现了问题由用户自己负责,确实世界上没有十全十美的东西,任何东西都会有瑕疵,软件也不例外,不可能做到零缺陷,我们不求做到最好,我们只求做到更好,试想用户的操作是多种多样的,谁能确保用户不会做到那些异常的非法的操作,我们不仅要确保正常功能实现的准确无误,一定还要做到异常非法的功能也要处理的准确无误,那样才能降低软件的缺陷率。通过我多次实践,发现不少严重致命的bug往往是由此操作导致,个人认为这与开发人员在异常情况下考虑不充分有一定的关系。

5、边界值测试

程序员会容易漏掉对边界值的处理,通过我多个版本的测试经历发现,每个版本都

会出现这种边界值数组越界导致程序core掉的致命bug,曾经测试过手机界面显示N个缩略图片的功能,显示几百张图片功能无误,但是超过某个数字即几千张之后,应用程序会立即出现一些致命的错误;同时在删除列表界面的第一个或者末尾一个图片时,也出现了严重问题。所以我们不仅仅只考虑到能编辑的文本框下边界值的测试,还要考虑到其他一切尽可能输入的情况。

6、性能测试

我们不仅要测试软件功能的正确性,还要测试软件的性能,软件的运行速度,是否有延时,软件的运行时间,长期的运行是否会增加对存储空间的额外占用情况等。在软件运行时,要懂得不定时的查看资源的利用率,查看cpu的占用情况,内存泄露会造成程序随机的莫名其妙core、卡屏、手机死机的情况,而往往由内存泄露导致的问题,重启手机之后,问题不容易重现,并且再次内存泄露时,出现的现象也会不同,对我们测试重现问题来说是一个比较头疼的事,所以不定时的查看内存情况,查看内存是否泄露,出现的不易重现的严重问题是否与内存泄露有关,其实也是一种定位问题的方法。

7、数据请求或传输等需时较多的过程要确保有提示界面,最好有动画显示数据在传输过程中,请用户耐心等待。另外要注意在这个过程中对重复按键予以忽略,因为等待时间过长或响应迟钝时,用户趋向于重复按手机按钮。曾经测试过删除某个文件,文件比较大,删除很慢,界面没有任何反应,无法判断是否在删除文件,迫不及待的重新乱按手机其他键,导致系统出现错误。

相关推荐