一.设计测试用例的万能公式
万能公式(6):功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全性测试
1.非软件类
-
水杯(非软件)测试用例
-
功能测试:想想产品的基本功能(保证基本使用)
-
装水,喝水
-
装满水
-
装一半的水
-
安全刻度
-
不漏水
-
烫手
-
折叠
-
-
界面测试(大小,形状,颜色,材质)
-
-
形状,大小,材质,颜色均符合产品说明
-
性能测试(对他百般折磨能不能抗住)
举例:登录注册(千万人同时登录)
-
耐热性
-
抗冻性
-
抗摔性
-
抗压性
-
抗腐蚀性
-
最大使用次数
-
-
兼容性测试
如果是一个软件:兼容性可以想到(系统版本,软件/浏览器版本)
- 水杯能否装水,啤酒,果汁等液体
-
易用性测试
假设我是一个从来没有使用过这个产品的用户,我首次使用的能否简单快速上手,考虑用户的使用习惯。
-
倒水是否方便
-
水杯是否拿着舒服
-
带盖水杯是否方便打开
-
水杯表面是否防滑
-
清洗水杯是否方便
-
-
安全性测试
-
材质是否健康
-
材质是否容易爆炸
- 材质在高温下是否会散发有毒气体
-
设计测试用例通常用
思维导图
来设计测试用例
2.软件类
再给你一个软件类的
课后练习
:设计登录+注册页面(软件)测试用例
功能测试
:账号和密码的错误情况穷举界面测试
:能看到的比如文字,图片,表单,下拉框,按钮等的颜色,大小,形状和布局测试和文字错别字,病句等测试性能测试
:响应时间,高并发测试兼容性测试
:系统(linux,windows)版本,终端(pc,移动端)测试,浏览器版本测试易用性测试
:用户习惯,上手体验安全性测试
:SQL注入,XSS漏洞,越权(垂直越权,水平越权)
二.设计测试用例的方法
- 等价类
- 边界值
- 判定表
- 正交法
- 场景设计法
- 错误猜测法
1.等价类
针对有需求的案例来设计测试用例
需求分析–>需求有哪些功能–>设计测试点–>设计测试用例
- 假如说给定的软件需求是:提示姓名长度为6~15位
6,7,8,9…15<=通过穷举法设计测试用例,若测试用例通过,则认为符合功能符合需求。
- 假如说姓名长度是6~200位,应该如何设计测试用例?
通过枚举法来设计是并不合理的!
分区分块—>使用较少的测试用例达到符合的系统测试覆盖
生活中的等价类的案例之图书馆的书籍摆放:
如果我要去图书馆找一本计算机专业书籍,那么我们不是从图书馆1楼第一本书开始一本本往下找,而是通过书籍摆放是分区域的,我们从一个区域拿出一本书,如果它是一本计算机专业书籍,那么这一片区域都是计算机区域!
根据需求输入范围划分为若干个等价类,从其中一个等价类取出一个用例,若干该测试用例通过,则认为该测试用例所在的等价类是通过的!
根据等价类来设计测试用例的步骤:
- 确定有效等价类和无效等价类
- 编写测试用例
ps:
有效等价类:针对需求来说是
有效且有意义
的数据构成的集合无效等价类:针对需求来说是
无效且无意义
的数据构成的集合
需求:6~200位的名字
有效等价类:6~200
无效等价类:0~5和>200
无效等价类的测试用例还更为复杂,更为离谱的测试用例。
2.边界值
边界值法通常是对等价类的补充
设计测试用例的时候:边界值+次边界值
高考的时候老师说:总分超过600分的就可以考985大学,这个时候我就会问老师:“老师,那我刚好600分能不能上985大学呐”?
对于代码来说,假如截止日期是1月31日,截止日期:deadline
if(deadline< 1.32 00:00:00 )
if(deadline<= 1.31 23:59:59 )
1的次边界值:0和-1
-1的次边界值:-2和0
23:59:59的次边界值:23:59:58和00:00:00
3.判定表
一种表达逻辑判断的工具
适用场景:需要考虑输入之间的组合关系,不同的组合对应不同的输出结果
需求:淘宝618活动,订单已提交,订单合计金额大于300或订单有红包,则认为该订单属于有优惠的订单,否则属于没有优惠的订单。
判定表设计测试用例的步骤:
- 确定输入和输出条件
- 找出输入条件和输出条件的关系
- 画判定表
- 根据判定表编写测试用例
4.正交法
两个概念:
因素数:输入的条件
水平数:输入条件对应的可选项(不是输出条件)
正交表特性:
1.每一列每一个水平数出现的次数相等(列的内部)
2.任意两列中水平数的排列方式齐全且均衡(列和列之间)
设计正交表非常有难度,怎么办?但是有一个设计正交表的工具-allparis
最后一步就是根据正交表设计测试用例啦!
值得注意的是除了正交表设计出来的测试用例,还有一些是遗漏的,遗漏的得自己补充!
5.场景设计法
主要分为基本事件流和多个备用事件流
绿色路径为主要的业务流程,被称为基本事件流
备用数据流是以基本事件流为基础,而触发的其他事件流。
编写测试用例:
基本事件流
插入银行卡,输入正确的密码,选择取款业务,选择小吴5w且金额是100的倍数的金额,等待出钞,最终出卡。备用事件流
- 插入银行卡,第一次密码输入错误,第二次密码输入正确,选择取款业务…
- 插入银行卡,前两次密码输入错误,第三次密码输入正确,选择取款业务…
6.错误猜测法
比较依赖测试人员的测试经验和工作经验