测试方法与理论笔记

被测需求
需求⽂档:
需求⽂档范例
功能、功能实现效果
需求评审:
业务场景⻆度
⽤户故事
业务流程图
功能点⻆度
数据约束(数据合理性的规则)是否全⾯、合理
存在分⽀的逻辑(判断是否符合条件的结果)、描述是否覆盖所有路径
多状态(⽐如订单的未⽀付、已取消、已发货、已收货等)流程,状态流转描述是否合理且完整
权限(⽤户操作范围)描述是否明确
需求分析(熟悉业务,了解业务,在⽤户⻆度分析,总结分析):
明确测试范围(确定测试边界)
明确功能点
明确业务流程
明确输出结果
分析异常流程
预估测试需要的时间和资源

基础概念
软件测试:
通过⼿⼯或者⼯具对“被测对象”进⾏测试
验证实际结果与预期结果之间是否存在差异
软件测试作⽤:
通过测试⼯作发现并修复软件当中存在的缺陷,从⽽提⾼⽤户对产品的使⽤信⼼
测试可以降低同类型产品开发遇到问题的⻛险
软件缺陷(软件测试时对⽐实际结果和预期结果的差异):
bug
软件缺陷会导致软件不能正常运⾏,或者不能满⾜⽤户的需求,甚⾄有可能破坏或泄漏⽤户的重要数据
软件测试原则(执⾏测试的时候必须遵循的规则):
测试显示缺陷的存在(任何操作都能证明软件有缺陷,但没办法预知)
穷尽测试是不可能的(没有办法把所有场景都测试)
测试尽早介⼊(更早发现解决问题)
缺陷集群性(遇到的bug可能集中在百分之⼆⼗的功能模块)2/8原则
杀⾍剂悖论(不能执⾏同样的测试⽤例很多次)
测试活动依赖于测试内容
没有错误是好是谬论(没发现不代表没有错误)
软件测试对象:
需求分析阶段:需求⽂档、接⼝⽂档
编码实现阶段:源代码
系统功能使⽤:软件程序
测试⽤例:
为特定的⽬的⽽设计的⼀组测试输⼊、执⾏步骤和预期的结果、以便测试产品是否满⾜特定需求的⽂档(测什么,怎么测)

测试⽤例价值与体系
概念 (Test Case):
为特定的⽬的⽽设计的⼀组测试输⼊、执⾏条件和预期的结果的⽂档(测什么、怎么测)
通过⼤量的测试⽤例来检验软件的运⾏效果
是指导测试⼯作进⾏的依据
价值:
指导测试的实施(提⾼测试效率)
规划测试数据的准备
编写测试脚本的“设计规格说明书”
评估测试结果的度量基准
分析缺陷的标准(实际结果和预期结果)
学习路线:
⿊盒测试⽅法论:
等价类
边界值
因果图
判定表
场景法
基于模型的测试
⽩盒测试⽅法论
测试⽤例基础概念
测试⽤例设计
⾯试测试⽤例设计
常⽤测试策略与测试⼿段

⿊河测试-因果图
定义:
利⽤图解法分析输⼊的各种组合情况,从⽽设计测试⽤例
适合于检查程序输⼊条件的各种组合情况
“因”—输⼊条件
“果”—输出结果
适⽤场景:
描述多种条件的组合
产⽣多个动作
基本符号:
恒等:原因出现则结果出现,原因不出现则结果不出现
⾮:原因出现则结果不出现,原因不出现则结果出现
或:有多个原因。⼏个原因中有⼀个出现则结果出现,⼏个原因都不出现则结果不出现
与:有多个原因。⼏个原因都出现则结果出现,其中⼀个原因不出现则结果不出现
约束条件:
互斥E:abc只能有⼀个成⽴,但是可以都不成⽴
包含I:abc中⾄少有⼀个成⽴
唯⼀O:abc中有且仅有⼀个成⽴
要求R:如果a成⽴,则要求b必须也成⽴,其他的不约束(a不成⽴,b不知道成⽴不)
屏蔽M:如果a成⽴的时候,强制b不成⽴,其他的不约束
基本步骤:
找出所有输⼊条件
找出所有输出条件
明确所有输⼊条件之间的制约以及组合关系
明确所有输出条件之间的制约以及组合关系
找出什么样的输⼊条件组合会产⽣哪种输出结果
把因果图转换成判定表
为判定表中的每⼀列表示的情况设计测试⽤例

⿊盒测试-等价类
等价类划分法(概念):
优点:考虑单个输⼊域 缺点:产⽣的测试⽤例多
重要的、常⽤的⿊盒测试⽅法
不需要考虑程序的内部结构,只需要考虑程序的输⼊规格
将不能穷举的测试过程进⾏合理分类,从⽽保证设计出来的测试⽤例具有完整性和代表性
⽤户所有可能输⼊的数据划分为若⼲个⼦集,然后从每⼀个⼦集中选取具有代表性的数据做
为测试⽤例
在有限的测试资源的情况下,⽤少量有代表性的数据得到⽐较好的测试效果
分类:
有效等价类:符合需求⽂档,输⼊合理的数据集合
⽆效等价类:不符合需求⽂档,输⼊不合理的数据集合
有效等价类+⽆效等价类=等价类
划分原则:
规定输⼊的取值范围或个数时,划分⼀个有效两个⽆效(⽐如⽤户名⻓度字符)
规定输⼊的集合或规则必须遵循的条件,划分⼀个有效⼀个⽆效(⽐如注册时⽤户名以字⺟开头)
输⼊条件是⼀个布尔值(是真或假),划分⼀个有效⼀个⽆效(⽐如注册时钩协议接受或不接受)
输⼊条件是⼀组数据,并且每⼀个输⼊的值做不同的处理,划分为若⼲个有效和⼀个⽆效(⽐如游戏充vip等级,vip1、2、3级为有效,不是VIP为⽆效等价类)
输⼊条件规定了必须要遵循的某些规则下,划分⼀个有效和若⼲个⽆效(⽐如密码要求⾸位⼤写,则⾸位⼤写为有效)
不是所有等价类都有⽆效等价类(⽐如选择性别,⽆论男⼥都是有效)
设计步骤:(等价类表—输⼊条件、有效等价、⽆效等价 (前三步)
先划分等价类:找出所有可能的条件
确定有效等价类:需求中的条件
确定⽆效等价类:与条件相反的情况,再找到特殊情况
从各个分类中挑选测试⽤例数据
总结:
⻓度
类型
组成规则
是否为空
是否重复
是否去除空

⿊盒测试-边界值(等价类的补充)
边界值确定:
上点:边界上的点
离点:离上点最近的点(输⼊域是闭区间在域的范围之外去选,开区间在域的范围之内去选)
内点:在输⼊域内任意⼀个点
选取正好等于、刚好⼤于或刚好⼩于边界值作为测试数据
划分规则:
如果规定了输⼊域的取值范围
选取刚好在范围边界的点
刚好超过边界的点
如果规定了输⼊值的个数(考虑数据类型和精度)
最⼤个数
最⼩个数
⽐最⼩个数少1
⽐最⼤个数多1
如果规定了输⼊是⼀个有序的集合
选取集合的第⼀个元素
选取集合的最后⼀个元素
总结:
确定边界情况
选取正好等于、刚好⼤于或刚好⼩于边界值作为测试数据
确定各个值的等价类

1 个赞