测试用例方法

一、场景法

1、如何针对APP或软件系统的使用场景来设计测试用例?

场景就是不同功能点按照一定的策略组合。

不同的功能点由于输入不同,会造成功能点不同的输入,从而使得整个场景(流程)走向不同的方向(中断流程、反复流程、流程顺利进行)。这些不同的功能点不同的输入导致不同的流程都要进行测试。

eg:ATM取款机,取款场景(取款流程)

在ATM机插卡---输入密码---输入取款金额---取款---退卡

1)在ATM机插卡:

①卡:插入其他卡(公交卡、饭卡),卡插反了,消磁,银行卡不匹配,卡损坏,卡被注销,挂失,吞卡(长时间不操作引起),卡过了有效期,冻结

②ATM机:没有联网,损坏,系统出现故障,死机,断电

2)输入密码:

①密码输入三次都错误,卡被锁,无法取款

②密码前两次输入错误,第三次输入正确,正常取款

③密码输入正确,继续取款流程

④卡没有被激活,输入密码不起作用

3)输入取款金额:

①输入钱超出余额

②ATM机余额不足

③取款金额不是100的整数倍

④取款金额超过当日取款的最大限额

⑤取款的次数超过当日取款最大次数

4)取款:

①机器故障,显示已经取出,但实际没有出款

②吐出来的金额与取款金额必须一致

③出钱口被异物阻挡,不出钞票

④钞票破损

⑤ATM机断网或断电时的处理

5)退卡:

①长时间不操作,卡背吞

测试用例的设计:

1)ATM机出现故障,插卡口损坏,无法取款

2)ATM机正常工作,卡插反了,重新正确插入卡,还可以继续取款

......

3)ATM机正常,插入匹配的银行卡,但三次密码输入错误,卡被锁,无法进行取款

4)ATM正常,插入正确匹配的银行卡,前两次密码输入错误,第三次输入正确密码,继续取款流程

....

5)ATM机正常,插入正确匹配的银行卡,密码输入正确,输入金额大于银行卡余额,重新输入小于银行卡余额的取款金额,正常吐钞,退卡,取款成功

....

场景法设计测试用例,先找出组成场景的每一个功能点,分析每个功能点可能出现的各种正常和异常的情况,根据这些不同的情况去设计不同场景下的测试用例。

二、错误猜测法

根据测试人员的知识、经验、直觉,去有针对性的设计测试用例。

eg:

1、搜索框:用户输入的前后空格去掉,然后去数据库中搜索信息。

问题:用户输入:    赵子龙                      数据库中存储的信息为:赵子龙        导致查询失败

解决:java开发人员可以使用 trim()方法,将字符串前后空格去掉

2、同一个搜索页,搜索出来的信息比较多的时候,需要分页展示

问题:不同的页面有相同的数据

解决:需要进行排序,再展示

三、正交法

研究多因素多水平的一种设计测试用例的方法,根据正交性,从多个实验室因素的水平组合中选取最优的水平组合,根据这些最优的水平组合实验的结果,来判断整体实验的结果。

eg:注册邮箱

姓名、邮箱、密码、确认密码、验证码            只考虑输入和不输入两种情况,暂时不考虑其他

2           2        2          2                2

2*2*2*2*2=32种情况

因素:输入的变量   --------- 姓名、邮箱、密码、确认密码、验证码

水平:每一个因素的取值  ----------输入和不输入

因数数:所有的变量个数  ----------5

水平数:每一个变量所能取到的最多的值的个数 ----------2

正交表的构成:

列:因素数,有几个因素(变量),表就有几列

行:行=(水平数-1)*因素数+1     ------------6

1、行和列确定了,表中具体的数据怎么确定?

满足正交表的性质即可

正交表的性质:

1)每一列当中不同数据出现的次数一样多

2)任意两列各种不同数据组合出现的次数一样多

正交法步骤:

1)找出所有的因素和水平

2)确认因素数和水平数

3)确认正交表的行和列

4)根据正交性填写正交表格

5)每一行是一个测试用例

6)补充认为比较重要但是没有在正交表中体现出来的测试用例

上一篇:nosql


下一篇:简易ATM+购物车之面条版