测试用例的目的:为了实施测试面向测试系统提供的一组集合,这组集合包含:测试环境,操作步骤,测试数据,预期结果等要素
注:测试用例覆盖率越高,说明测试质量越高
测试用例覆盖率越低,说明测试质量越低
测试用例设计方法:
基于需求测试用例的设计:
功能相关:
微信发红包:发出去的红包限制金额200元;领取红包时间24小时
基于需求设计的测试用例是不完善,只是大概得对软件进行了测试
具体的设计测试用例的方法:
等价类:
比如:男同胞找女朋友:女的,活的,可爱的,有钱的,长得白,身材好,温柔,善良
找到女朋友了:
女的,活的,可爱的,有钱的,长得白,身材好,温柔,善良
有效等价类:满足用户需求的数据集合
无效等价类:不满足用户需求的数据集合
通过等价类这个方法如何设计测试用例? 答:依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题
测试蜜雪冰城新品是否好喝:
有效等价类:蜜雪冰城 新品
无效等价类:奈雪 蜜雪冰城不是新品
买菜:
蔬菜 肉类
油麦菜,土豆,红薯,大米,鸡胸肉,牛肉
土豆,红薯,大米=》无效等价类
鸡胸肉,牛肉=》有效等价类
油麦菜=》有效等价类
如何通过等价类的方法测试测试用例
①充分理解需求
②划分出有效等价类和无效等价类
③从有效等价类中抽取一个测试用例测试,从无效等价类中抽取一个进行测试
用户名①由长度为6~15位的字符串组成②只有字母
边界值:
双十二淘宝购物活动
buy_time=0;
if(user_buy_time>=12.12 0:00 && user_bug_time<=12.12 23:59:59){ //有优惠} else{ //无优惠}
if(user_buy_time>12.12 0:00 && user_bug_time<12.12 23:59:59){ //有优惠} else{ //无优惠}
1)上点,离点,内点
上点:无论是开区间还是闭区间还是半开闭区间,上点就是边界上的点
内点:无论是开区间还是闭区间还是半开闭区间,边界内的点
离点:边界左右的一个点,如果是闭区间,离点就是范围外的点,如果是开区点,离点就是范围的点
上点:1,11
内点:6
离点:0,12
上点:1,11
内点:6
离点:2,12
2)设计测试用例步骤
①充分理解需求
②找离点,上点,内点
③针对离点,上点,内点设计用例
场景设计法
什么事场景
场景设计法设计测试用例的时候具体的步骤是什么
1)主事件流
2)次事件流
3)将主事件流次事件流串起来就会形成一个场景,一个场景就是一个测试用例
淘宝购物:
测试点①:打开淘宝APP,搜索商品,选中商品,加入购物车,选择支付方式,支付成功生成订单
测试点②:打开淘宝APP,APP闪退,没有订单
判定表法:
1.逻辑关系:
恒等:条件为真,结果一定为真,条件为假,结果一定为假
与:条件全为真,结果才为真,条件中有一个为假,结果为假
或:条件全为假,结果才为假。条件中有一个为真,结果为真
非:条件为假,结果才为真
2.如何通过判定表法设计测试用例
1)充分理解需求
2)分析所有可能输入和可能输出
3)找到输入与输出之间的对应关系
4)判定表
5)把判定表对应到每一个测试用例
案例一:
假设业务订单的处理规则为:“淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则进优惠”
输入:订单提交,订单没有提交,金额大于300,金额小于300,有红包,没有红包
输出:有优惠,没有优惠
找关系:
①订单已提交,金额大于等于300,有红包,有优惠
②订单已提交,金额大于等于300,没有红包,有优惠
③订单已提交,金额小于300,有红包,有优惠
④订单已提交,金额小于300,没有红包,没有优惠
⑤订单已提交,金额大于等于300,有红包,没有优惠
⑥订单已提交,金额大于等于300,没有红包,没有优惠
⑦订单已提交,金额小于300,有红包,没有优惠
⑧订单已提交,金额小于300,没有红包,没有优惠
正交表法:
1.几个名词:
因素(Factor):在一项试验中,凡欲考察的变量称为因素(变量)
水平(位级)(Level):在试验范围内,因素被考察的值称为水平(变量的取值)
正交表的构成:
行数(Runs):正交表中的行的个数,即试验的次数,用N代表。
因素数(Factors):正交表中列的个数,用C代表。
水平数(Levels):任何单个因素能够取得的值的最大个数。正交表中的包含的值为从0到数“水平数-1”或 从1到“水平数”,用T代表。
正交表的表示形式: L=行数(水平数*因素数) L=N(TC)
2.正交表的性质:
每一列中各个数字出现的次数一样多
任何两列中各个有序对出现的次数都一样多
3.如果正交表设计测试用例
1)确定因素
2)确定因素取值也就是水平
3)通过工具画正交表
4)将正交表转化成测试用例
5)补充正交表
案例二:
以注册的需求为例:
测试点①:姓名填写,email填写,密码填写,确认密码填写,验证码填写,实验结果填写
...
测试用例设计思路:测试用例设计万能公式
功能:如果是一个物体,功能就是这个物体进场用来干什么
界面:物体一看上去形状,颜色,大小
易用性:物体设计的符合人体工学
兼容性:一个物体出了本质功能,还能做那些事情
安全性:物体不能对人的健康有损害
性能:承受能力
网络。。。例如:
软件:
功能:软件本职能够用来干什么
兼容:软件在各个品台上能够运行,常考虑的设备有IOS,Android,PC(电脑,windows,Linux,Mac),如果是浏览器就要考虑浏览器的版本
易用性:软件设计符合大众 1的操作习惯
警告:黄色 ;报错:红色;通过:绿色
安全:软件防止黑客攻击,xxx漏洞,SQL注入
性能:软件页面渲染时长,软件能够同时间承载大量的用户访问
界面:图片布局,图片大小,按钮颜色,文字字体
zip这个命令设计测试用例:
功能:
压缩txt文件,能够压缩成功;
压缩视频文件,能够压缩成功
压缩图片文件,能够压缩成功
压缩完成之后,原文件能够正常使用
压缩完成之后,产生的压缩文件,占用外存减小
兼容:Linux上出了centos这个系统除外,其他的系统是否兼容
性能:压缩一个非常小的文件,用的时间非常短;压缩一个非常大的文件要的时间也需要很短
界面:zip-选项 文件
压缩成功的文件展示的颜色会发生变化;压缩完成的文件,应该是一个zip文件
易用性:zip这个命令选项见名知章
安全:
压缩完成之后,原文件不能被损坏;
压缩完成之后,新文件解压缩之后,也能正常使用