测试用例可以用来衡量一个项目测试质量,因此在平时的测试流程中,编写测试用例就是测试过程中很重要的一步,每一个测试工程师都需要并且非常熟练的编写测试用例,能在编写测试用例中尽可能的覆盖任何异常的测试点;如何能编写优秀的测试用例,就需要测试人员掌握更多的用例编写技巧以及思考出更多的测试点。针对于游戏测试,大多更偏向于功能方面的测试,根据功能测试用例逐项测试,检查产品是否达到了策划的需求。功能测试主要采用黑盒测试策略设计测试用例,进行测试。主要功能模块测试的测试用例设计方法包括:等价类划分、边界值分析、错误推测法、因果图和判定表、场景法、正交实验法。下面就以上几种方法进行一些分享。
1. 等价类划分法等价类划分,指的是一种典型的、重要的黑盒测试方法。其就是解决如何选择适当的数据子集来代表整个数据集的问题,通过降低测试的数目去实现“合理的”覆盖,以此发现更多的软件缺陷,统计好数据后由此对软件进行改进升级。
举例一: 设有一个认证条件,要求玩家输入以年月表示的日期。假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。 首先,划分等价类并编号,下表等价类划分的结果
输入等价类 有效等价类 无效等价类日期的类型及长度 (1)日期的类型及长度 (2)有非数字字符 (3)少于6位数字字符 (4)多于6位数字字符
年份范围 (5)在1990~2049之间 (6)小于1990 (7)大于2049
月份范围 (8)在01~12之间 (9)等于00 (10)大于12
设计测试用例,以便覆盖所有的有效等价类,在表中列出了3个有效等价类,编号分别为(1)、(5)、(8),设计的测试用例如下:
测试数据 期望结果 覆盖的有效等价类200211 输入有效 (1)、(5)、(8)
为每一个无效等价类设计一个测试用例,设计结果如下:
测试数据 期望结果 覆盖的无效等价类95June 无效输入 (2)
20036 无效输入 (3)
2001006 无效输入 (4)
198912 无效输入 (6)
200401 无效输入 (7)
200100 无效输入 (9)
200113 无效输入 (10)
举例二: 登录账号的时候,邮箱地址输入框输入数据,程序检测,判断用户输入的邮箱地址是否合法。现用等价类划分法和边界值分析法设计测试用例:
对输入的要求:
a.用户名只能用小写字母和数字还有‘.’组成
b.邮箱用户名首位必须是小写字母或者数字
c.用户名长度在6-30个字符之间
d.必须要有 @ 符号和必须要有 ‘.’
e.@后面要以.结束(*为任意字符串)
等价类表:
输入等价类 有效等价类 无效等价类邮箱的组成 (1)小写字母、数字和‘.’、@ (2)在非小写字母、数字和‘.’、@的字符
用户名首位 (3)小写字母或数字 (4)以‘.’开头 (5)以@开头
用户名长度 (6)6-30个字符之间 (7)小于6个字符 (8)大于30个字符
@符号和‘.’ (9)@后面要以*.*结束(*为任意字符串) (10)没有@符号 (11)以@符号结尾 (12)@符号后面没有‘.’(13)以‘.’结尾 (14)@ 符号和‘.’没有字符串
覆盖等价类的测试用例:
符号 输入 覆盖等价类 期望结果1 zhangyuting313 @gmail.com (1)、(3)、(6)、(9) 有效输入
2 zhang-yuting313 @gmail.com (2) 无效输入
4 .zhangyuting313 @gmail.com (4) 无效输入
4 @zhangyuting313 @gmail.com (5) 无效输入
5 yu @gmail.com (7) 无效输入
6 zhangyuting313124567896321456987569 @gmail.com (8) 无效输入
7 zhangyuting313gmail.com (10) 无效输入
8 zhangyuting313@ (11) 无效输入
9 zhangyuting313@gmailcom (12) 无效输入
10 zhangyuting313@gmail. (13) 无效输入
11 zhangyuting313@.com (14) 无效输入
2. 边界值分析法