【测试】基本概念
2022-04-10 本文已影响0人
Queenie的学习笔记
1. 测试用例(Test Case)
测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。
(测试用例是执行测试前由测试人员编写的指导测试的文档,测试用例主要解决测什么、怎么测、如何衡量的问题。)
通俗理解:把要测试的内容和步骤记录下来,方便测试
2. 测试用例的编写规范和组成
1)基本信息:功能模块、编写人、编写时间
2)主体信息:编号、测试对象、测试点、前置条件、 测试步骤、预期结果、用例优先级(高、中、低)
3)执行结果:执行通过/未通过/未执行/执行时间/缺陷编号
编写的原则:百分之百的覆盖需求(工作中只能尽可能满足需求,基本达不到100%覆盖需求)
3. 编写用例参考内容
1)文档:需求文档、开发文档、用户手册
2)参照相应的软件编写
3)项目组内讨论一般分为两轮:(组内评审、项目评审)
4. 编写测试用例的方法
1)测试大纲法:拆分系统模块
- 需求分析时,将系统中操作逻辑、主要功能、测试点举出来列大纲,编写测试用例。
- 列大纲的形式可以多种多样:画图Xmind,文字描述、word
2)等价类划分:找到所有的正例和反例
- 将测试的范围划分成几个互不相交的子集,他们的并集是全集,从每个子集选出若干个有代表性的值作为测试用例。
- 等价类的划分,最关键的是子集的划分。实际上,非数字还可以继续划分子集:字母,特殊字符。究竟要划分到何种程度才合适,则要看有多少测试资源和测试时间,以及是否值得。无论怎么测试,总会有未发现的缺陷存在,所以先解决容易被发现的问题再说。
3)边界值:值域方面的测试
- 大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部,针对各种边界情况设计测试用例,可以查出更多的错误。
- 选出的测试用例,应选取正好等于、刚刚大于、刚刚小于边界的值
- 如果是完整的测试,除了边界值外,还需要一个正常值
4)正交排列方法:组合过多、因果图不易测试的情况下
- 在各因素互相独立的情况下,设计出一种按照一定规则生成的特殊表格,找出能以少数替代全面的测试用例,正交表的主要特征“均匀分布,整齐划一”
- 因素:被测的元素,因素的个数记为k
- 水平:因素的可能值,水平的个数记为m
- 正交表的行数n=k*(m-1)+1,通常用L表示正交表,完整的表示为Ln(mk)
- 如果每个因素的水平数相等,称之为单一水平正交表,各列水平数不完全相同的正交表称为混合水平正交表,如L8(4124),表示有一个因素的水平为4,有4个因素的水平为2
5)场景法:系统流程测试
- 用来描述系统的功能点或业务流程,提高测试效果
- 一般包含基本流和备用流,从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。
6)状态转换图方法:基于状态转换软件测试设计
- 软件测试对象的输出和行为方式不仅受当前输入数据的影响,同时还与软件测试对象之前的执行情况、之前的事件或以前的输入数据等有关。
- 通过引入状态图(State Diagram)来描述软件测试对象和软件测试数据、对象状态之间的关系。
- 状态图中的各个状态是通过不同的事件驱动的,如函数的调用。
- 基于状态图开展的测试称之为状态转换测试。
状态图转化法最早运用于嵌入式测试用例设计。在嵌入式软件中,系统通过某种行为驱动能够从一种状态改变到另一种状态,如内存状态转换图。
7)因果图:因果关系进行编写测试用例
- 因(原因):输入条件
- 果(结果):输出结果
- 因果图:就是通过画图的方式来表示输入条件(因)和输出结果(果)之间的关系。
8)判定表:也称决策表,能表示输入条件的组合,以及与每一输入组合对应的动作组合。与因果图法相似判定表法主要侧重输入条件之间的逻辑关系。
- 又称为策略表,基于策略表的测试,是功能测试中最严密的测试方法。
- 该方法适合于逻辑判断复杂的场景,通过穷举条件获得结果,对结果再进行优化合并,会得到一个判断清晰的策略表。
9)错误猜测:推测程序中可能存在的各种错误
- 这种方法没有固定的形式,依靠的是经验和直觉,很多时候,我们都会不知不觉的使用到