传统软件测试和游戏测试在设计测试用例上的区别

发表于:2011-5-30 11:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Jackc    来源:51Testing软件测试论坛

  从本质上说,传统的软件测试游戏测试在设计测试用例上并没有区别。

  游戏测试只是在传统的用例设计方法基础上,根本其自身特有的属性(也就是业务属性),追加了局部功能用例设计粒度而已。而为了让局部功能达到更高的用例设计粒度,很自然的就使用了一些特殊的设计方法。

  打个比方,把传统软件测试比作“面食制作”,那么游戏测试就像是做“包子”,而web测试就可以比作做“面条”了。虽然包子和面条有些许不同。但是它们同是在“将面粉发酵后加工并加入辅料”这个原理中完成的。加工方法和选择的辅料则就是依据它们自身的特性而决定的(也就是测试业务决定细节)。

  测试过程如此,测试用例设计原理也是如此。

  我对游戏不是很熟悉,简单说一下知道的3个在游戏测试中被加强的测试项目:

  1. 数字测试

  游戏测试中,经常会涉及很多数学算法的测试,如,伤害计算,人物属性/经验成长计算…..这类数字计算的测试内容,在设计用例时,除了单纯的检查各个算法公式的计算结果是否正确外,还需结合用户体验方面考虑算法本身是否合理。比如,人物升级过慢可能导致用户在使用过程中失去耐心,而升级过快则可能降低用户的使用时间….如何让目标算法达到一个合理的曲线,是游戏测试用例设计中的一门独特的学问,需要长时间的业务累计才能做出正确的判断。

  2. 组合测试

  游戏测试中,单个功能的测试大都和传统测试差不多。但是游戏测试比其他测试更开放,它的各个功能相互连接很紧密。在传统测试中,1个功能可能与10个其他功能存在交互;而在游戏测试中,1个功能则经常会与几十个,上百个其他功能交互。所以游戏测试更强调了功能的组合测试。

  处理组合这类问题时,可以先分为“逻辑组合”和“条件组合”两个方面着手。逻辑组合可以画出流程图,根据路径覆盖得到可用用例(也可分类测试元素后,直接使用因果法);条件组合可以整理出测试元素后,用正交/结对等方法得到用例。当“逻辑组合”和“条件组合”两者需要同时测试时,可先分别设计用例,再将两个用例组的各个用例再一次使用正交/结对 组合合在一起,得到最终用例。

  3. UI测试

  游戏测试中,有多次重复使用某个UI的特点。如树木图标,它可能是有5个不同的图标,这5个不同的树木图标将出现在游戏中50个UI位置上,每个图标都被多次复用了。

  所以,在游戏测试中,UI测试可以分为两个方面:个体测试和整体测试。

  个体测试主要主要负责各个单个UI元素的检查;而整体测试则是对整个UI的检查,也就如通常的“跑地图”一般。

  在用例管理时,UI个体测试用例,可以单独分类出来;

  而UI整体测试用例,一部分可以放到功能测试中,当对切换新UI,需要测试新功能时,则先使用一组UI整体检查用例,再使用功能测试用例;另一部分,则需要独立管理,如纯粹的“跑地图”UI。

  当然,也可以把整体UI用例与功能用例结合起来,比如测试背包系统时,将背包使用的UI场景作为1个新的前置条件,那么背包的不同功能测试,将在不同的UI场景完成。这样既可以覆盖不同UI,也可以测试不同功能。但是,不建议这么设计用例,主要原因还是游戏测试本身就具有复杂的功能组合逻辑,即使只增加1个新的前置条件,都将大大增大用例设计的难度。用例设计难度越大,也就意味着设计出的用例出现泄露的风险越大。

  所以,“跑地图”这类整体UI测试用例设计,还是以选择UI场景为主,在各个不同的UI场景中,检查不同的主要功能即可。

  原帖地址:http://bbs.51testing.com/thread-440341-1-1.html

版权声明:本文由会员Jackc首发于51Testing软件测试论坛“我要做专家-你问我来答”活动第11期。

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号