软件测试学习(二)测试用例例子、黑盒测试(一)
测试用例excel例子
- 这个帖子很好,很详细
测试用例编写
- 编写时间可以是:需求分析阶段开始(推荐),一般不需要等到编码完成,尽量的早开始。
- 注:依赖用例可选
黑盒测试
1、等价类划分
- 有效等价类(遵从规则设计)
- 无效等价类(违反规则来设计)
- 个数为规则的个数:有几个规则,就设计几个违反规则的无效等价类(从不同角度违反规则)
- 确定测试用例
- 1、为每个等价类规定一个编号
- 2、设计新的测试用例尽可能多的覆盖尚未覆盖的有效等价类
- 3、设计新的测试用例使其只覆盖一个无效等价类
- 4、重复以上步骤,创建测试用例
测试规则分析
如图:
显性需求(用户名):设置后不可更改,中英文均可,最长14个英文或7个汉字
隐性需求(用户名):不可重复;汉字字节和字符字节数不一样;不可为空;不可特殊符号;etc
边界值分析法
- 边界:有效等价类和无效等价类的分割线
- 边界数据:
- 刚刚到边界值或者刚刚超越边界值
- 比边界大一个
单位
或小一个单位
,单位按实际程序来定义(注意负数特殊,根据实际要不要) - 例子:
1) 6≤x≤18,单位为
整数
,请问测试中x的边界值要选取哪几个进行测试?
答:5、6、7、17、18、19
,注意边界值为6、18
2) 6<x<18,单位为整数
,请问测试中x的边界值要选取哪几个进行测试?
答:6、7、8、16、17、18
,注意边界值为7、17
因果图法
- 因果图法是一种适合于描述对于多种输入条件组合的测试方法
- 根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法
- 它适合于检查程序输入条件涉及的各种
组合
情况。 - 例如:
- 不
勾选条款
不让注册登录 - 单单勾选条款不填信息也不行
- 更改密码时,不输入
确认密码
或者确认密码
填写不一致
- 不
- 简单来说,一堆
因
造就某个果
- 因果关系说明:
- 1)恒等。原因A成立,结果B一定成立。
- 2)非。原因A成立时,结果B一定不成立。(但是A不成立,B不一定成立)
- 3)或。原因A、B、C三者只要有一个成立,结果D就一定成立。
- 4)与。原因A、B、C三者都成立时,结果D才成立。
- 关系的约束
原因
关系的约束说明(1 表示原因成立,0 表示原因不成立):- 互斥(
Exclusive
)。A + B + C ≤ 1
- 包含(
Include
)。3 ≥ A + B + C ≥ 1
- 唯一(
Only
)。A + B + C == 1
- 要求(
Request
)。a = 1,则b必须为1,不存在a = 1且b = 0的情况。(注意 ab 的顺序)(b一定先成立)
- 互斥(
结果
关系的约束说明(1 表示原因成立,0 表示原因不成立):- 屏蔽(
Mask
)。a = 1,则b必须为0。
- 屏蔽(
- 例子:
别人的帖子
自动售货机的例子:
有台自动售货机,只能投1元或5角,有以下情况:
1、投五角选橙汁,出橙汁;
2、投五角选啤酒,出啤酒;
3、投1元,选橙汁,出橙汁,找零5角;
4、投1元选啤酒,出啤酒,找零5角。
因果图画成表格:
C1代表Case1,表示第一种情况。每一列作为一个测试用例,相当于
有效等价类
注:其中红框的C5、C6、C7不应该填在表格,因为不能存在没有结果的测试用例,
因果图只画合法的路径,不存在反向测试的路径
局限性:
- 原因及结果很多的时候,图片逻辑会显得杂乱无章,可读性差。
优点:
- 可以发现软件设计的不足(
不符合表格结果的均为Bug
)
- 可以发现软件设计的不足(
判定表法(决策表法)
- 主要适用于多条件的情况,且条件桩顺序无关紧要,不影响结果的情况
- 组成:条件桩、动作桩、条件项、动作项
- 条件项(真或假)
- 动作项(条件组合得到的结果或动作)
- 实现步骤:
- 1、找出条件(原因)的数量(假设有n个条件)
- 2、统计条件组合的数量(组合有2的n次方种组合)
- 3、去除不存在的条件组合(不合法的,不适合的)
- 例子:
- 分析
- 可见,条件先后顺序和动作结果没有关系
- 条件桩:金额是否超过500(0或1,且
互斥
)、时效是否过期(0或1,且互斥
) - 动作桩:发通知单、提货单、批准单
- 所以,
动作项
有4种情况 - 判定表结果:
- 简化优化判定表(取舍不合理的地方):
- 不管金额的高低,只要未过期,就会发送批准单和提货单。(在测试时间不充足的情况下,可以选二者中的一个情况进行测试)
- 优化后:
场景法
- 基本流(主要功能,比如
电商软件
,基本流可以是购买商品的事件) - 备选流(除了基本流外的支流,比如
电商软件
,你卖东西是基本流,但买的时候没开支付宝或没注册,就会跳转
到其他事件,为备选流) - 如下图:
- 组合基本流或备选流,得到场景组合(排列组合):
- 注:每一个场景都是测试用例
- 例子(ATM机):
软件测试学习(二)测试用例例子、黑盒测试(一)相关推荐
- #学习笔记4#软件测试基础——测试阶段划分、黑盒测试的一些知识
今天主要看了以下几个方面的知识点,基本都是纯理论,本文只做知识点总结,具体内容要看转载 1.软件测试阶段划分,分为4个阶段:单元测试.集成测试.系统测试.验收测试 单元测试是方法类的覆盖,主要是由开发 ...
- 少儿编程Scratch学习教程5--基本操作(二)动画例子
本篇介绍下动画相关例子 1.表情的转换 首先创建一个精灵角色 之后在外观选项中,选择"将造型切换为...",这样就可以在特定情况下就可以更换造型了 添加一个事件,当按下" ...
- 软件测试学习指南(更新中)
1 参考资料 1.1 书籍 --系统化学习 <软件测试>第二版 链接 密码:dpxq 1.2 思维导图下载 2 功能测试 2.1 定义 功能测试是一种黑盒测试(内容实现不知道,仅知道输入和 ...
- 字节软件测试岗二面:APP测试问题被虐哭了,直到看到这些知识点
APP测试一直是大厂软件测试问到的一个重点细节,下面我来给大家展示一下大厂关于APP测试经常会问到的一些问题,以及解析.想象一下当你遇到面试官问到你这些问题时,你是否也能够对答如流哦! 注意,注意啦! ...
- 软件单元黑盒测试,软件测试教学资源单元3 黑盒测试.doc
软件测试教学资源单元3 黑盒测试 <软件测试>课程教学单元设计 单元3 黑盒测试-网上订餐系统的测试授课教师: 课程组授课班级: :教学条件软件平台.投影设备.广播软件.互联网教学素材参考 ...
- 2022最新软件测试学习路线图
2022最新软件测试学习路线图! 正在学习或者考虑学习软件测试的小伙伴们有时候是不是觉得很迷茫,学习了软件测试职业到底有哪些发展方向呢?又需要学习哪些内容,掌握到什么程度呢?学习过程中,学习路线是必不 ...
- 2023最新软件测试学习思维导图(从小白到大师进阶之路)
如下是我工作之余熬夜整理的软件测试学习思维导图,通过回顾多年的从业经验,总结提炼出来的一些东西,希望能对大家有些帮助,特别是刚入门软件测试行业或将要加入软件测试行业的同学,可以认真看一下,可以作为参考 ...
- 两小时带你进入软件测试行业风口(附全套软件测试学习路线)
随着信息技术的发展和普及,人们对软件的使用越来越普及.但是在软件的使用过程中,软件的效果却不尽如人意.为了确保软件的质量,整个软件业界已经逐渐意识到测试的重要性,软件测试已经成为IT 领域的黄金行业. ...
- 零基础如何自学软件测试?2020软件测试学习路线
零基础如何自学软件测试?2019软件测试学习路线 软件测试自学实践部分比较难,因为需要找到有问题的源代码进行测试,更建议跟团队一起学习. 下面讲讲软件测试的学习路线,希望对你有所帮助: 功能测试 1. ...
最新文章
- VO 2 具体的过程
- Linux快速查看某条命令的版本和存放的位置(ls -l `which mvn`)
- mysql使用shell脚本部署_shell脚本部署mysql主从
- 触发器 :new和 :old的使用
- 【字符串操作之】返回指定长度的字符串→→substr方法
- 图论--网络流--最大流 洛谷P4722(hlpp)
- pytorch 加载模型_福利,PyTorch中文版官方教程来啦(附下载)
- 论文浅尝 | 基于文本关联的知识图谱的无监督嵌入增强
- 学习《图解HTTP》有感
- python 小说爬虫_从零开始写Python爬虫 --- 1.7 爬虫实践: 排行榜小说批量下载
- Java常用JSON库FastJson,Gson,Jackson,Json-lib性能及特点比较,常用工具方法
- java tomcat jvm内存_【转】Linux下tomcat JVM内存
- 公司收银系统要不要服务器,一套收银系统要多少成本
- MySQL数据表操作思维导图
- VHDL学习--分频器
- 怎么把PDF转换成Word?2种转Word方法技巧
- 淘宝美工掌握这4种能力,不逊色于UI设计师
- 沉睡者 - 网赚创业VIP项目课程-持续更新中...
- Mac安装ps软件,提示Error解决方法
- 如何设计一枚「拟态」按钮
热门文章
- python报告水印怎么弄_超简单Python安全批量打水印教程!
- maven下载安装环境配置
- 分布式-图片上传到Lgnix
- mpi并行 写同一文件_并行计算调度策略的笔记(001)
- pythonclass的使用详情_python 类class基础简明笔记
- php 跨天 时间差 秒,判断时间是否在预设跨天时段
- 简单 python 小说爬虫 ultimate
- MySQL外键约束_ON DELETE CASCADE/ON UPDATE CASCADE
- windows环境下Eclipse开发MapReduce程序遇到的四个问题及解决办法
- 【Python】随机种子 random/numpy/pytorch/pytorch.cuda