游戏测试基础知识

版权声明:本文为博主原创文章,未经博主允许不得转载。尊重他人即是尊重自己~ https://blog.csdn.net/Unity_Ming/article/details/51472895
常见的软件设计缺陷类型

1.功能错误,比如我命令角色向东,他向西;没办法进行联网操作等
2.错误的游戏数据,包括地图,角色属性,物件属性等
3.程序流程错误
4.计时错误
5.由软件模块构造/打包/合并而导致的错误
6.算法错误
7.文档缺陷,其内容涉及文本、对话框、用户界面元素、帮助文本、指示说明、声音、视频、场景、关卡、环境对象、物件
8.接口错误:
a.以错误的参数数值调用函数
b.以错误的参数次序调用函数
c.遗漏参数去调用函数

测试阶段

        A.前期准备工作
    1.确定测试项目范围
    2.指定测试领队
    3.确定标准尺度
    4.参与游戏设计者讨论
    5.设置缺陷跟踪数据库
    6.草拟测试计划并设计测试方案,包括测试计划和测试用例

        B.游戏开发期间测试
    1.单元测试
    2.组合测试
    3.系统测试
    4.性能测试
    5.WEB测试

        C.Alpha测试
        D.Beta测试
        E.用户测试
        F.发布证书

游戏测试的流程

1.玩游戏,使劲地玩,努力地玩,拼命地玩. . .
    a.检测用户界面是否正确/流畅地显示
    b.检测游戏对按钮和鼠标的反应是否正确/流畅
    c.检测角色/物件的设计是否正确/合理
2.确定BUG,包括代码中的和设计中的BUG
3.详细地描述所遇到的问题
4.报告测试小组/团队
    a.使用缺陷跟踪系统
    b.正确的报告格式和内容,如缺陷的详细描述、问题的优先级、解决建议等等
    c.其它相关的有用资料,例如服务器的LOG、屏幕拷贝、游戏闪存、测试系统所捕获的各种数据
    d.测试小组讨论
    f.对所作出的错误修复再次进行测试

测试技术和方法

        常用的测试技术有黑盒法,白盒法。在我往后的写作计划中,我打算用实例来介绍黑盒法/白盒法的使用,即运用某种测试软件,使用实际的测试用例来测试某段程序。

数值测试

        在游戏编程设计中涉及到大量的数值计算,包括时间、距离、速度、数量、大小等等,它们所涉及的测试用例有:
  1.数值的默认值
  2.数值的列举
  3.数值的范围
  4.数值的边界

测试执行过程的三个阶段
(1)初测期——测试主要功能和关键的执行路径,排除主要障碍。
(2)细测期——依据测试计划和测试大纲、测试用例,逐一测试大大小小的功能、方方面面的特性、性能、用户界面、兼容性、可用性等等;预期可发现大量不同性质、不同严重程度的错误和问题。
(3)回归测试期——系统已达到稳定,在一轮测试中发现的错误已十分有限;复查已知错误的纠正情况,确认未引发任何新的错误时,终结回归测试。

游戏策划与测试计划
测试过程不可能在真空中进行。如果测试人员不了解游戏是由那几个部分组成的,那么执行测试就非常的困难,同时测试计划可以明确测试的目标,需要什么资源,进度的安排,通过测试计划,既可以让测试人员了解此次游戏测试中那些是测试重点,又可以与产品开发小组进行交流。在企业开发中,测试计划书来源于需求说明文档,同样在游戏开发过程中,测试计划的来源则是策划书。策划书包含了游戏定位,风格,故事情节,要求的配制等等。从里面了解到游戏的组成,可玩性,平衡(经济与能力),与形式(单机版还是网络游戏),而我们测试在这一阶段主要的事情就是通过策划书来制定详细的测试计划,主要分两个方面一是游戏程序本身的测试计划,比如任务系统,聊天,组队,地图等等由程序来实现的功能测试计划,二是游戏可玩性测试计划,比如经济平衡标准是否达到要求,各个门派技能平衡测试参数与方法,游戏风格的测试,三是关于性能测试的计划,比如客户端的要求,网络版的对服务器的性能要求。同时测试计划书中还写明了基本的测试方法,要设计的自动化工具的需求,为后期的测试打下良好的基础。同时由于测试人员参与到策划评审,对游戏也有很深入的了解,会对策划提出自己的看法,包含可玩性,用户群,性能要求等等并形成对产品的风险评估分析报告,但这份报告不同于策划部门自己的风险分析报告,主要从旁观者的角度对游戏本身的品质作充分的论证,从而更有效的对策划起到控制的作用。

写游戏测试方案
基于黑盒测试所产生的测试方案属于高端测试,主要是在操作层面上对游戏进行测试;基于白盒测试所产生的测试方案属于低端测试,是对各种设计细节方面的测试。黑盒测试中不需要知道里面是如何运行的,也不用知道内部算法如何设计,只要看游戏中战斗或者情节发展是否是按照要求来进行的就可以了。这种测试可以找一些对游戏不是很了解的玩家来进行,只要写清楚要干什么,最后达到什么样的效果,并记录下游戏过程中所出现的问题。而白盒测试就需要知道内部的运算方法,比如A打B一下,按照A和B现在的状态应该掉多少血之类都应当属于这种测试。白盒测试需要策划人员自己来完成,因为内部的算法只有开发人员自己才清楚,而且发现问题策划是最容易知道如何解决该问题的人。由于测试的工作量巨大,合理安排好测试和修正BUG的时间比例非常关键,否则很容易出现发现了问题却没有时间改正或者问题堆在一起无法解决的矛盾。测试设计应当在开发的设计阶段就要完成,如果开发初期没有给安排出合理的时间,那么最后的结果肯定是不停的跳票!

  在测试方案中,设计人员要根据需要把黑盒测试、白盒测试有效的结合在一起,并且按照步骤划分好测试的时间段。根据游戏开发过程,测试大致可以分成单元测试、模块测试、总体测试和产品测试几个部分。单元测试一般集中在细节部分,主要是在游戏引擎开发阶段对引擎的构造能力和完善性进行检测。该部分的工作要求细致严禁,因为任何一点小的纰漏都可能导致后期大量的BUG产生。这时要求程序开发人员与策划达到无隔阂的交流,策划人员要清楚该引擎任何一个功能单元的使用方法和效果,这样才能够保证测试中能即使发现问题并指出问题的所在。

  模块测试是在游戏开发进程中按照阶段进行的,每当一个模型产生后就需要对该部分进行一次集中测试,从而保证系统的坚固和完善。模块之间的接口测试也属于该部分的工作,就是说各个游戏模块之间如何实现过度,数据如何进行交换都要进行严格的测试。往往在模块内部测试时一切正常,把模块拼装在一起后反而问题百出,这就需要在阶段性模块测试中及时解决!总体测试属于比较高层的测试,在游戏的DEMO基本完成后,要从宏观上把整个游戏合成在一起,这时就要求有全面控制进度的能力。最终的产品测试是游戏质量保证的最后一道关卡,要求大量的非开发人员介入进行地毯式轰炸!产品测试往往也会伴随一些市场活动,这就不是我们现在要讨论的范畴了。

  我们已经知道了测试过程分成几个阶段,下面就一起来看看具体要包括那些内容:

  1、测试的时间分配:测试时间如何分配会直接影响到开发的进度,它包含测试时间、测试结果汇总时间以及修改错误的时间等几个部分。一般来说,开发人员只认为测试时间才是需要分配的,其实合理的安排测试总结和修改BUG等工作占用的时间才是更多的!如果不进行测试情况汇总,项目管理者就无法弄清到底是哪些部分出了问题;不马上对发现的问题进行修改就会导致更多的问题发生。所以定期测试、发现问题、解决问题才是最合理的,把整个开发周期划分为几个阶段定期测试是对产品质量的根本保证!科学安排测试的时间能够用最少的代价解决最多的问题,否则把测试都堆积在最后结果只会是一团糟!

  2、测试人员的安排:测试人员的选择和调配对游戏质量来讲是非常关键的。测试人员尽量不要选择游戏的开发人员,只有对游戏没有任何了解的人才能真正的发现程序或设计中的问题,虽然他可能对程序和游戏设计一点都不懂。如果能有一支专门的测试队伍当然是最好的,在经费和人员实在紧张的情况下把其他非开发部门的人借调一下不失为一个好办法。

  3、测试内容清单:这部分要求测试方案设计人员精心的考虑计算,尽量把测试内容精确到操作级。意思就是说最好细化到某测试人员点击鼠标几百次这种程度,因为测试人员是对你的游戏内容一点都不了解的,只有你把任务全都明确后才可以收到预期的效果。只规定某人去玩这个游戏然后给予反馈是不负责任的做法,这种测试方案只能当作垃圾给丢到废纸桶里面去!要对每个测试人员的工作明确下去,用测试表格的形式进行填写测试报告并签字写清楚测试时间,才算是合格的测试方案。

  4、测试结果汇报:最终测试报告汇总上来,策划人员要对全部方案进行评估并进行分类,把测试中发现的问题确定解决优先级然后反馈给相关部门。问题特别严重的要敢于要求返工,任何一点小问题也不能放过,严格的测试才能带来高质量的游戏产品,这个法则适用于任何产业,游戏也不例外!

  5、调整开发进度:由于测试发现的问题所带来的进度影响要及时反馈给上级领导,然后马上更新项目进度表,并注明更改原因。因为开发进度的调整关系到很多部门的工作,所以最好在早期设计进度时就把测试时间预算进去,但实际上大多数情况下开发进度的变化是非常频繁的。如何休整进度还不影响到游戏完成的最终时间,对于任何项目管理人员来说都是一个挑战!

  测试方案一旦确立,剩下的就是烦琐和枯燥的机械工作了。测试是最痛苦的,但没有测试游戏是不可能成为产品,这也是国内大多数赶工期的游戏BUG百出的问题所在。科学的制订测试方案并协调好各部门之间的进度,对任何一个项目来说都是至关重要的事情,对于刚入门的策划来讲,学会写测试方案是必修的课程之一。
展开阅读全文

没有更多推荐了,返回首页