|
最近听同学告诉我了游戏开发的主要过程,因此个人对游戏测试和软件测试做了一个对比。在对比前先要对游戏开发过程和应用软件开发工程做一个介绍。
应用软件开发过程比较通用的做法就是:需求提取、需求分析、需求设计、架构设计、详细设计、编码、验收。在这个过程中做的比较好的是:测试始终贯穿,但是大多做法是测试在编码阶段后面,在验收前面,相当于准验收。
游戏开发过程是:游戏设计(其中包括游戏剧本等游戏元素,本人具体不懂就不扩展了)、编辑器设计(就是通常说的游戏引擎)、关卡设计、关卡制作、游戏贴图、验收。在这个过程中测试是对除了游戏设计不做跟踪之外(个人认为在这个阶段测试人员也应当介入,起码测试的设计人员应当介入)。
应用软件所作测试做要针对软件代码(其实好的测试在需求阶段就应当介入,但是目前中国软件不是这样的因此不加以叙述)、软件界面(测试做的好的还会对用户操作习惯等细节作测试)。其中代码是测试最为主要的测试点,即便黑盒测试、系统测试等最终产生的bug都是通过对代码的修改来关闭bug的。但是游戏测试中针对代码的测试主要就是游戏编辑器作阶段,因为在游戏的生产过程中大多数的代码量都是集中在游戏引擎阶段的,而制作关卡(就是通过做好的游戏编辑器把游戏编出来,类似帝国时代中的地图编辑器,当然比那个要复杂的多,它可以编辑整个游戏出来)中只有少数的脚本代码。因此,可以看出来游戏测试和应用软件测试最大的相同点在于白盒测试,而其他的测试则不尽相同了。当然在对功能作测试的时候都是使用软件,因此有人可能会认为还是一样的阿,但是由于各自测试所针对的点的不同使得它们在测试中所要面对的点不同。
应用软件所主要侧重于是否完成了客户的需求或者是否符合产品所要完成工作的要求,也就是说应用软件完成了些什么。因此在设计测试用例的时候可以从客户的需求或产品的需求里面提取测试用例的基础数据,从而加上软件测试的一些其他方法而生成左后的测试用例,对应用软件进行测试。而游戏则要在考虑游戏性上多做测试,它除了关心是否完成了,它对怎么完成的关注度是非常高的,这个就是游戏的游戏性,比如:游戏操作是否繁琐、游戏的AI是否过高(我以前完全不知道这个也算bug)。因此游戏测试人员所要做的就是在玩游戏的过程中找到完成游戏的过程中的问题,而不是结果的问题。
由于个人对游戏测试的具体方法不了解,在这里我有几个疑问,希望高手予以解答。问题是:游戏测试人员难道只要变态的打游戏么?因为我们知道应用软件测试可以通过测试用例来规范测试的过程,但是游戏测试是通过什么来规范测试的过程的呢? |
|