2.编写测试用例的方法


==7种==

测试常用的方法:code review +代码静态分析、CI/CD

CI--持续集成--开发成员经常集成它们的工作,尽快发现集成错误

CD--持续部署--将集成后的代码部署到更贴近真实运行的环境

2.1 测试用例的描述:

用例编号 用例标题 功能模块名称 前置条件 输入数据 操作步骤 预期结果

优先级 执行结果 编写人 执行人 其他补充项

2.2 测试用例设计方法

测试2:编写测试用例的方法_第1张图片

(1)基于需求:依据需求来写测试点

​ 难点:读出需求之外的测试点(需求非常的了解)

需求学习方法:、

  • 多学习、分析需求
  • 测试经验
  • 项目组人员多沟通

(2)等价类--分类

思想:解决无穷输入

目的:减少测试用例条目

概念:无穷输入进行N个归类,从第一个类中提取一个数据进行测试,只要这个数据测试通过,我们就任务它所在的这一类的数据全部测试通过

有效等价类:根据需求说明书,和需求一致,有意义的输入数据构成的集合

无效等价类:和需求不一致,不满足需求的集合

(3)边界值:--黑盒测试方法

测试用例来自等价类的边界,是等价类的一种补充方法,与它基本成对出现

场景:输入和输出

强调:输入和输出的“边界值”

取值:开区间和闭区间

开区间--向外取值,闭区间--向内取值

【1,50】---0,1,50,51

(1,50】--1,2,50,51

(4)因果图--条件和结果的关系--最后转为判定表

场景:输入(原因)和输出(结果)之间的关系

概念:输入(原因)和输出(结果)之间的关系,输出依赖输入(多个)
因果图需要掌握的基本知识
基础概念:

恒等、与、或、非

恒等

如果原因为真,那么结果必定为真。

只有两个原因都为真,那么结果为真

2个原因有一个为真时,结果为真

原因为假,结果才为真

因果图设计测试用例的步骤:

- 列出所有输入
- 列出所有输出
- 理出输入和输出之间的关系
- 画因果图
- 画判定表,列数是输出的输入次方
- 从表里提出测试用例
因果法设计测试用例可以帮助测试人员理清输入和输出的关系,但是对于比较复杂的输入和输出,会耗费大量时间

(5)正交排列法:--减少用例数目,对因果图的改进

​ 原理:正交表,正交实验(抽样)

​ 目的:减少测试用例的条数

两条性质:

  • 任何一列中出现的数字个数一样\

  • 任何两列中有序对出现的次数一样

    L=N(TC)--L:正交表

    N:行数实验次数

    T:水平数(变量的可取值个数)

    C:因素数(变量的个数),列

    N=C*(T-1)+1

    步骤:

    -变量提取出来
    
    -提出水平
    
    - 找出正交表(多个)
    
    -取值---映射到表中
    
    -表中每一行就是一条测试用例
    
    -特殊的测试数据表中没有的添加进来

    (6)场景法:业务流程(一个业务流程不一定是一个场景)

业务流程:把孤立的功能点串起来

注册--登录--写邮件--发邮件

业务流程是场景法的典型用法

(7)错误推测法(猜测)

非凭空想象,是有来源的,三大来源:


  - 对某项目测试时间长

  - 用户反馈

  - 从故障库中整理bug,梳理产品以往哪些地方容易出现问题

例如:输入框要求字符类型--字符型

输入非字符型:是等价类中的无效等价类,同时它也是错误推测法

2.3 测试用例的评审:

- 分为项目组评审
- 用户评审:可以是最终用户也可以是程序员
- 同行评审
- 白盒:要查看代码

2.4黑盒测试设计测试用例方法包括:

等价类划分、边界值分析、因果图、场景法、正交实验设计法、判定表、驱动分析法、错误推测法、功能图分析法,依据是用户需求规格说明书、详细涉及说明书

2.5白盒测试设计测试用例方法包括:

语句覆盖、判断覆盖、条件覆盖、路径覆盖、条件组合覆盖,依据是代码结构和逻辑

六种覆盖标准发现错误的能力由弱到强的变化:

-语句覆盖,每条语句至少执行一次。
-判断覆盖,每个判断的每个分支至少执行一次。
-条件覆盖,每个判断的每个条件应取到的各种可能的值。
-判断/条件覆盖,同时满足判断覆盖条件覆盖。
-条件组合覆盖,每个判定中各条件的每一种组合至少出现一次。
-路径覆盖,使程序中每一条可能的路径至少执行一次。