1/等价类
就是把全部的出入数据划分为几个等价类,然后在每一个等价类里取一个代表性的数值输入 查看结果。
划分等价类:可以把一个等价类看作一个集合,集合里面的数据作为输入数据来揭露程序是否有问题时等价的,就可以把这个集合的数据看成一个等价类。划分等价类时不要忘记对软件来说没有意义的那类数据(大部分有效数据都会对应一组无效的数据),软件也要对无效数据进行兼容。
比如注册用户名密码;用户名分别为数字,字母,汉字,对应无效数值 空格,符号,空值等。。。。
2/边界值分析
作为等价分析的一种补充,很多的错误时发生在输入和输出的边界上,对于有边界限制的输入和输出,应该重点测试下刚刚等于,刚刚小于和刚刚大于边界值的情况,
比如搜索匹配结果是要求有连续的三个字才能匹配出来,就需要测试连续两个字,连续四个字,不连续的两个三个四个字时的输出结果。。。。
3/错误推测
根据经验列举出可能出错和容易发生错误的情况,选择性的设计出用例。
比如新增加的需求加入了H5活动页来丰富需求(android),那么保证功能后就要重点看下top20的版本和屏幕分辨率的适配问题了。
4/因果关系(如矩阵遍历)
等价和边界分析都是考虑单一的输入条件,但是实际应用中很多操作是在混合操作的组合产生的结果(多个条件的组合)。
比如要求只有会员完成固定的任务才能领取礼包(可列出输入条件和输出结果后组合遍历所有可能性)
1 是会员
2 完成任务如下载某款游戏
下载未登录 /登录后下载(非会员)/ 均不能领取
5/路径优先(优先级)
把系统设计的流程图表化,缕清主要流程和次要流程并划分优先级,根据细分过的流程结合等价,边界,错误推测和遍历来设计用例。
MindMaple 或者自己熟悉的画图工具,能清晰表达出逻辑即可。
6/场景选择
现在很多结果都是通过触发事件完成,而触发事件时所处的场景就至关重要来。。。
可以先列出基本场景下的基本操作流程,然后在此基础上添加非常规场景来完善
如乘坐电梯;正常场景是你从一层到你想到的楼层。非常规场景是 在你乘坐的过程中有人要去相同的方向则电梯会停止。。。。