测试用例可以用来衡量一个项目测试质量,因此在平时的测试流程中,编写测试用例就是测试过程中很重要的一步,每一个测试工程师都需要并且非常熟练的编写测试用例,能在编写测试用例中尽可能的覆盖任何异常的测试点;如何能编写优秀的测试用例,就需要测试人员掌握更多的用例编写技巧以及思考出更多的测试点。针对于游戏测试,大多更偏向于功能方面的测试,根据功能测试用例逐项测试,检查产品是否达到了策划的需求。功能测试主要采用黑盒测试策略设计测试用例,进行测试。主要功能模块测试的测试用例设计方法包括:等价类划分、边界值分析、错误推测法、因果图和判定表、场景法、正交实验法。下面就以上几种方法进行一些分享。
等价类划分法
等价类划分,指的是一种典型的、重要的黑盒测试方法。其就是解决如何选择适当的数据子集来代表整个数据集的问题,通过降低测试的数目去实现“合理的”覆盖,以此发现更多的软件缺陷,统计好数据后由此对软件进行改进升级。
举例一: 设有一个认证条件,要求玩家输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。 首先,划分等价类并编号,下表等价类划分的结果。
设计测试用例,以便覆盖所有的有效等价类,在表中列出了3个有效等价类,编号分别为(1)、(5)、(8),设计的测试用例如下:
为每一个无效等价类设计一个测试用例,设计结果如下:
举例二: 登录账号的时候,邮箱地址输入框输入数据,程序检测,判断用户输入的邮箱地址是否合法。现用等价类划分法和边界值分析法设计测试用例:
1)对输入的要求
1、用户名只能用小写字母和数字还有‘.’组成
2、邮箱用户名首位必须是小写字母或者数字
3、用户名长度在6-30个字符之间
4、必须要有 @ 符号和必须要有 ‘.’
5、@后面要以*.*结束(*为任意字符串)
2)等价类表:
3)覆盖等价类的测试用例:
边界值分析法
其实边界值可以算是为了配合等价类而加的一个限制条件,一般会根据略小于最小值、略大于最大值、等于最小值/最大值进行边界值的一些验证;一般来说,关于区间型数据边界值的测试,大多都是略小于最小值和略大于最大值是不满足要求的,中间的数据是满足需求的。 边界值附近的数据确定的几种方法:
举例一: 还是以上面要求玩家输入以年月表示的日期来作为例子。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能",下面是关于边界值需要检测的点。
举例二: 购买一个宝箱,一次性最多只能购买5个,以边界值的标准可选取5个(正好等于)、6个(刚刚大于)、4个(刚刚小于),3个(正常值)作为边界值来测试。
错误推测法
没有确定的步骤,很大程度上是凭经验, 结合以往测试经验和直觉设计软件在功能和流程上可能存在的各种错误,进行容错性测试。例如输入数据为零或输出数据为零时容易发生错误的情况,所以可选择输入值为零的例子,以及使输出值为零的例子;又如输入表格为“空”或输入表格只有一行是较易出错误的情况,所以可选择表示这些情况的例子。根据字面意思,也就是列出可能出现问题的点,猜测哪些情况可能会有问题。 举例一: 如面购买宝箱的例子,针对于需求,仅是对于给出的数据进行了测试,但是在实际情况中,实际要求中需要注意的点。根据平时测试,出现过问题的地方,所以又应该考虑到以下的测试点:
(1)尝试购买-1个宝箱
(2)尝试购买0个宝箱
(3)多次购买小于5个宝箱
(4)多次购买5个宝箱
(5)购买宝箱后重启客户端/服务器
(6).......
举例二:对于游戏中,需要做屏蔽词功能,需要考虑到以下玩家会进行操作的功能点进行测试(多多自走棋为例),我们需要考虑到所有可能出现玩家输入信息的地方,根据对平时对项目的熟悉以及自己的经验,想到一些可能会出现问题的地方:
(1)创建账号(玩家填写角色名称)
(2)聊天功能(世界聊天、好友私聊、队伍聊天、发送邀约信息、制图工坊、房间队伍聊天、局内战斗聊天、局内私聊、局内观众、局内裁判、观战发送聊天信息)
(3)个人信息(玩家修改昵称)
(4)自建房间(玩家创建/修改房间昵称)
作者:佚名
来源:http://www.51testing.com/html/15/n-4477215.html