软件测试之黑盒测试用例
目录
1.测试用例要素(四个重要的要素)
2.测试用例的给我们带来的好处
3.测试用例的设计方法
3.1 基于需求进行测试用例的设计
3.2 具体的设计方法之等价类
3.2 边界值
3.3 判定表
3.4 正交表
3.4.1 如何通过正交表设计测试用例
3.5 场景设计法
3.6 错误猜测法
4.历届面试问题
4.1 如何使用Fiddler模拟弱网
4.2 接口测试
4.3 水杯测试用例设计
4.4 微信发送朋友圈设计测试用例
1.测试用例要素(四个重要的要素)
测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素
2.测试用例的给我们带来的好处
1️⃣提高测试效率,节省测试时间
2️⃣测试用例是自动化测试用例前
3.测试用例的设计方法
3.1 基于需求进行测试用例的设计
基于需求设计测试用例是测试设计和开发测试用例的基础,第一步就要分析测试需求,验证需求是否正确、完整、无二义性,并且逻辑自洽。在需求正确的基础上细化测试需求,从测试需求提炼出一个个测试点或者测试项,然后根据每一个测试点进行测试用例的设计;
例如:微信升级
发送红包金额限制:200元
微信领取红包时间限制:24h
金额200块能不能发送成功,金额超过200块的时候能不能发送成功
在分析测试需求时,一般分为功能测试需求和非功能测试需求
功能测试需求:
对于功能测试中,可以借助功能框图来帮助我们进行测试的需求分析。概括起来,功能测试需求包括以下,通常包括以下几个方面。1)系统各个功能 界面的验证2)借助业务把功能串起来进行测试3)功能的一致性,交互性(多功能互操作)的测试4)系统的不同输入,结果输出的业务数据测试。5)功能的错误操作,异常操作的测试(属于负面测试)6)功能实现用到的算法验证,有时需要用运代码评审7)用户操作的 易用性,用户体验,往往结合功能测试同时验证针对具体的需求,可以根据业务分类,用户角色(餐厅的会员系统)或者用户操作区域等将系统的功能分解成若干个功能模块,然后按照功能模块分别进行测试需求分析。按照功能模块划分, 业务模块划分是最常见的做法。
非功能测试需求:
非功能测试需求主要涉及 性能,安全性,可靠性,兼容性,易维护性和可移植性等。从测试需求分析来看,每一类非功能特性测试都需要根据需求单独分析。他们之间可能会存在相互影响,如安全性越高,就越有可能给易用性,性能带来更大的挑战
这里我们通过一个163邮箱为例如何通过基于需求设计测试用例
3.2 具体的设计方法之等价类
依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。
1️⃣有效等价类:满足用户需求输入需求的集合;
2️⃣无效等价类:不满足用户得输入需求的集合。
等价类思想设计测试用例步骤
1️⃣充分理解需求
2️⃣划分有效等价类,划分无效等价类
3️⃣从有效等价类抽取其中一个数据进行设计测试用例;从无效等价类中抽取其中一个进行测试用例设计
例如:
有效等价类:6~15位 无效等价类:小于6位&&大于15位
3.2 边界值
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。
边界值设计测试用例步骤:
1️⃣充分理解需求
2️⃣找边界点
3️⃣针对边界点设计测试用例
边界点
上点:边界点
内点:边界内的点
离点:边界值附近的一个点(闭区间区间外距离上点最近的点,开区间区间内距离上点最近的点)
3.3 判定表
判定表是另一种表达逻辑判断的工具
- 与
条件全为真, 结果为真. 其中一个条件为假, 结果为假 - 或
其中一个条件为真, 结果为真. 条件全为假, 结果为假 - 非
条件为真, 结果为假. 条件为假, 结果为真 - 恒等
条件为真, 结果为真. 条件为假, 结果为假
如何设计测试用例:
1️⃣分析所有可能的输入和输出
2️⃣找出输入与输出之间的对应关系
3️⃣设计判定表
4️⃣将判定表对应到每一个测试用例
例如:假设业务单据的处理规则为:“淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则进优惠”。
3.4 正交表
✨两个重要的概念:因素:输入变量 变量:每一个输入变量取值
每一列中各数字出现的次数都一样多。 任何两列中的各有序数对出现的次数都一样多
3.4.1 如何通过正交表设计测试用例
充分理解需求 ----> /确定因素,确定水平 ----> 画正交表 ----> 补充正交表 ----> 将正交表转换成测试用例
案例:继续以注册为例(类似工具可以使用微软的PICT工具):
因素:姓名、邮箱、密码、确认密码、验证码
水平:填写、不填写
allpairs 画正交表
1️⃣将因素和水平放到 excel 表格中
2️⃣将 excel 表格内容直接复制到 txt 文本中
3️⃣CMD 进入到 allpairs 安装路径下边
4️⃣生成正交表
此时的测试用例:
3.5 场景设计法
现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,是测试用例更容易理解和执行。典型的应用是是用业务流把各个孤立的功能点串起来,为测试人员建立整体业务感觉,从而避免陷入功能细节忽视业务流程要点的错误倾向
如何通过场景测试法设计测试用例:
充分理解需求 ----> 确定主事件流 ----> 确定次事件流 ----> 每一个事件流就是一个测试用例
以ATM为例:
3.6 错误猜测法
错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。
这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。
错误推测法和目前流行的“探索式测试方法”的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应运于测试。
这个方法的缺点是难以系统化,并且过度依赖个人能力。
以注册为例1、校验中特殊字符空格的处理?2、密码校验中的大小写?3、姓名中的特殊字符?4、密码发送是否明文
4.历届面试问题
4.1 如何使用Fiddler模拟弱网
打开 Fidder ,保证手机设备、笔记本IP都在同一个网段
1️⃣打开弱网设置
2️⃣查看网络传输速率:
找到 BeforeRequest:
4.2 接口测试
一个页面有哪些接口?我们直接按 F12 就可以看到接口了
1️⃣打开浏览器,直接 F12
2️⃣右击一个接口,进行复制
3️⃣打开 Postman 软件,并且打开 import:
4️⃣http请求方式,get,post,delete,针对参数进行测试(传递所有参数,传递部分参数,不传递参数,传递其他的参数)
5️⃣性能:
4.3 水杯测试用例设计
4.4 微信发送朋友圈设计测试用例
软件测试之黑盒测试用例相关推荐
- 软件测试之黑盒测试用例的四种设计方法
一.输入域测试用例设计方法 输入域测试法是一种综合考虑了等价类划分.边界值分析等方法的综合方法,针对输入域测试法中可能出现的各种情况,输入域测试法主要考虑三个方面: 极端测试(Extremal Tes ...
- 软件测试之黑盒测试用例的四种设计方法【建议细看】
一.输入域测试用例设计方法 输入域测试法是一种综合考虑了等价类划分.边界值分析等方法的综合方法,针对输入域测试法中可能出现的各种情况,输入域测试法主要考虑三个方面: (1)极端测试(ExtremalT ...
- 软件测试之黑盒测试方法介绍及测试用例练习
一.因果图法 1. 概念 因果图是一种逻辑图,表示:恒等.与.或.非 当输入有很多时,不同输入的组合对应不同的输出,用因果图来分析不同输入组合和不同输出组合之间的关系 恒等:在恒等关系中,要求程序有1 ...
- 软件测试之接口测试用例设计,全网独一份
1.接口测试用例设计简介 我们对系统的需求分析完成之后,即可设计对应的接口测试用例,然后用接口测试用例进行接口测试.接口测试用例的设计也需要用到黑盒测试方法,其与功能测试用例设计的方法类似,接口测试用 ...
- 【测试】软件测试之黑盒、白盒、灰盒测试
黑盒测试: 不关心软件内部的逻辑,是关心输入和输出是否达到预期效果,相当把测试的软件看成一个只有输入和输出的黑盒子. 黑盒测试设计测试用例的方法:等价类.边界值.因果图法.正交法.场景法和错误 ...
- 软件测试之 购物车测试用例
1.界面测试 • 界面布局.排版是否合理:文字是否显示清晰:不同卖家的商品是否区分明显. 2.功能测试 未登录时: • 将商品加入购物车,页面跳转到登录页面,登录成功后购物车数量增加: • ...
- 软件测试密码修改教程,软件测试之用户注册和密码修改测试用例设计
软件测试之用户注册和密码修改测试用例设计 发表于:2009-03-05来源:作者:点击数: 软件测试技术导航 软件测试技术 : 软件测试工程师 测试用例 功能测试 测试管理 缺陷管理 手机测试 自动测 ...
- 软件测试之测试用例设计(二)
本文是学习软件测试的,内容均转载自https://blog.csdn.net/qq_41782425 目录 一丶边界值例题 二丶判定表 三丶黑盒测试用例设计(正交实验) 一丶边界值例题 1.结合等价类 ...
- 软件测试之测试策略与测试用例设计
软件测试策略 1.测试分类 软件测试对象:程序+数据+文档 软件测试阶段分类:单元测试-集成测试-系统测试-验收测试 软件测试实施组织分类:开发方测试.用户测试.第三方测试 测试方法 按是否关注内部逻 ...
最新文章
- 一图看懂《中关村人工智能产业培育行动计划》
- Spark UDAF用户自定义聚合函数
- Daily Scrum 11.5
- Chromium浏览器之渲染引擎Blink
- linux mv 保持目录结构_Linux中的mv命令详解
- python 遍历对象_python js对象的遍历
- stm8s 时钟库函数选择内部RC初始化
- 电机入门之路系列1--减速步进电机的原理
- Polyfill工作笔记001---简介
- 语音识别双十一优惠活动
- hdu 1284 dp
- Tri-training regression, 协同训练回归
- Centos7 Kubernetes(k8s) 开发服务器(单服务器)部署nacos-sentinel-rocketmq-zipkin-elasticsearch等等 一键部署 即开即用服务
- GSM、TD-SCDMA、WCDMA、LTE
- 钓鱼c语言,C语言实现小猫钓鱼游戏
- 软件工程系啦啦队报名表(全部213人)
- jQuery下载安装详细教程,jQuery入门必备
- apfs扩容_MacBook Air 2015 换硬盘心得
- linux环境下如何安装DHCP服务器及示例
- 钱多多软件制作第七天
热门文章
- 2022-2028年中国美容仪行业发展战略规划及投资机会预测报告
- 【JavaScript框架封装】实现一个类似于JQuery的动画框架的封装
- Ubuntu安卓手机投屏
- HTML5 单个或者多个Video标签视频加载第一帧方法(poster属性)
- 【论文笔记 6】A probabilistic method for emerging topic tracking in Microblog stream
- java中怎么剪切文件_总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇
- 保险集团CMAF想成为法国量子优势“第一个吃螃蟹的人”
- Unity3D全景视频渲染
- AI会改变什么?不会改变什么?ChatGPT之父对人工智能未来的判断
- AidAim Single File虚拟存档/备份库