测试理论----测试设计方法论

article/2025/9/23 10:49:44

【原文链接】

1、测试用例格式

(1)用例编号:用例的唯一标识,要求具有易识别性和易维护性,能能够根据用例编号识别用例的目的和作用,一般格式为:A-B-C-D
其中

  • A:一般表示产品或者项目名称
  • B:表示用例属性(针对哪个的测试阶段,UT,IT,ST)
  • C:表示测试项或者功能模块
  • D:编号
    如:taobao-st-login-001

(2)测试项:说明测试用例所属功能模块
(3)用例名称:用于描述测试用例的关注点,原则上用例名称不能重复
如:输入错误的验证码,登录失败
(4)优先级:体现测试用例的重要程度,一般分为高、中、低
(5)测试类型:如:功能测试、可用性测试,兼容性测试、可靠性测试、安全测试,性能测试
(6)前置条件:描述执行用例时需要优先满足的条件
(7)测试步骤:根据业务流程描述出操作的每一个步骤(包括动作和数据)
(8)预期结果:根据需求描述用例每个测试步骤需要达到的效果(界面表现、功能表现、数据表现)
如:
在这里插入图片描述

2、等价类

(1)原理:根据需求将被测对象的所有可能的输入划分为若干集合,在每一个集合中,每一个元素对于发现but的效果是等价的
(2)分类:

  • 1)有效等价类
  • 2)无效等价类

(3)等价类划分原则

  • 1)在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类
  • 2)在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类
  • 3)在输入条件时一个布尔量的情况下,可以确定一个有效等价类和一个无效等价类
  • 4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确定n个有效等价类和一个无效等价类
  • 5)在规定了输入数据必须遵守的规则情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)
  • 6)在确定已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步细分

(4)使用步骤:

  • 1)分析需求,根据划分原则,划分出有效等价类和无效等价类

  • 2)列出等价类表

  • 3)为有效等价类设计测试用例(设计原则:一条用例尽量多的覆盖未被覆盖的有效等价类,重复操作,知道所有的有效等价类被覆盖完)

  • 4)为无效等价类设计测试用例(设计原则:每条测试用例覆盖一个未被覆盖的无效等价类,重复操作,知道所有的无效等价类被覆盖完)

  • 举例:邮箱注册:
    要求:

    • 1)邮箱地址:6-18个字符,可以包含字母数组下划线,以字母开头
    • 2)密码:6-16个字符,区分大小写
    • 3)手机号:有效

    步骤:

    • 1)根据需求,划分有效等价类和无效等价类,列出等价类表
      在这里插入图片描述

    • 2)为有效等价类设计测试用例
      在这里插入图片描述

    • 3)为无效等价类设计测试用例
      每个无效等价类需要用一个用例来覆盖,其他条件需要均为有效,注意,这里无效等价类不能叠加,因为如果叠加,可能存在因为一个无效等价类导致另一个无效等价类不能被测试到
      这里无效等价类的用例就不再列举了
      在这里插入图片描述

3、边界值分析法

(1)原理:大多数的缺陷出现在输入的边界,如果边界即边界附近的值都不会引发错误,则集合内其他值引发错误的概率也非常低
(2)基本概念

  • 1)上点:输入边界上的点
  • 2)离点:离上点最近的点
  • 3)内点:输入范围内的点
    例:[2,6],上点为2,6(有效),离点为1,7(无效)
    例:[2,6),上点2(有效)、6(无效),离点1(无效),5(有效)

4、流程分析

(1)流程图的基本使用
在这里插入图片描述

如:
在这里插入图片描述

(2)基本概念

  • 1)基本流
  • 2)备选流
  • 3)异常流
    在实际测试过程中主要关注基本流和备选流

(3)使用步骤

  • 1)根据需求,画出流程图

  • 2)根据流程图提取测试路径

  • 3)利用等价类和边界值方法为每一条路径设计测试用例
    如:1)画流程图
    在这里插入图片描述

    2)提取路径

    • 1)1-2-3-4
    • 2)1-2-5-6-7-8-9-2-3-4
    • 3)1-2-5-10-11-8-9-2-3-4
    • 4)1-2-5-6-7-8-12

    3)为每条路径设计测试用例

    • 1)一次猜测正确,奖励1000积分
    • 2)第一次猜大了,第二次猜测正确,奖励1000积分
    • 3)第一次猜小了,第二次猜测正确,奖励1000积分
    • 4)连续猜错5此,游戏结束

5、正交试验

(1)常用于功能测试(查询)、配置测试等
(2)基本概念:

  • 1)因子:影响试验结果的条件
  • 2)水平:每个因子可能的取值

(3)试验步骤

  • 1)分析需求,获取因子以及因子的水平数

  • 2)根据因子及水平选择正交表

  • 3)根据实际情况以及经验优化正交表

  • 4)使用等价类和边界值为每一条规则设计测试用例

    例如:某系统库存查询功能,如图所示,使用正交实验法设计测试用例
    在这里插入图片描述

    • 1)分析因此、水平数(6个因子,2水平)

    • 2)选取正交表(可以使用使用正交小助手(下载地址)),得到正交表,如下
      在这里插入图片描述

    • 3)优化正交表

      • 1)补充全部不使用(+1)
      • 2)补充只使用一个条件(+6)
    • 4)为每一条规则设计测试用例

6、状态迁移

(1)什么是状态迁移法
状态机的测试主要关注在测试状态转移的正确性上面,对于一个有限状态机,通过测试验证其在给定的条件下是否需能够产生需要的状态变化,有没有不可达的状态和非法的状态,可能不可能产生非法的状态转移等,对于被测系统,如果我们可以抽象出它的若干状态,以及这些状态之间的切换条件和切换路径,那么我们可以从状态迁移路径覆盖的角度来设计用例对该系统进行测试,状态迁移法的目标的设计足够的用例达到对系统状态的覆盖,状态-条件组合的覆盖以及状态迁移路径的覆盖
(2)使用方法

  • 1)分析需求,明确对象的状态节点

  • 2)绘制状态迁移图

  • 3)绘制状态迁移树

  • 4)提取测试路径

  • 5)利用等价类与边界值为每条路径设计测试用例

    例如:某航空订票系统中订单的状态如下
    1)选定座位后,此时为待付款状态
    2)付款后,为已支付状态
    3)出行,到机场换取登机牌,此时为已出票状态
    4)过安检登机,此时为已出行状态
    5)在未出行前都可以取消
    步骤:
    1)分析状态节点:待付款、已支付、已出票、已出行、取消
    2)绘制状态迁移图
    在这里插入图片描述
    3)绘制状态迁移树
    在这里插入图片描述
    4)提取路径

    • 1)待付款-取消
    • 2)待付款-已付款-取消
    • 3)待付款-已付款-已出票-取消
    • 4)待付款-已付款-已出票-已出行
    • 5)为上述每条路径设计测试用例

7、判定表

(1)用于分析和表达在多个条件下程序执行不同动作的工具
(2)组成

  • 1)条件桩:列出影响结果的所有的条件
  • 2)动作桩:根据不同的条件可能执行的动作
  • 3)条件项:不同条件的组合
  • 4)动作项:在具体的条件下执行的动作
    格式如:
    在这里插入图片描述
    举例如:
    在这里插入图片描述

(3)使用方法

  • 1)分析需求,获取被测对象的输入和输出,定义条件桩,动作桩

  • 2)设计判定表

  • 3)优化判定表

  • 4)使用等价类和边界值对每一条规则设计测试用例

    举例:某文件管理系统中对修改文件有如下要求:第一个字符必须是A或者B,其余字符必须为数字,满足条件则修改文件名成功,如果第一个字符不合法,提示:第一个字符必须为A或者B。如果其他字符不合法,提示:其他字符必须为数字
    1)分析需求

    • 1)条件:
      • 1)第一个字符必须是A或者B
      • 2)其余字符必须为数字
    • 2)动作:
      • 1)修改文件名成功
      • 2)第一个字符必须为A或者B
        * 3)其他字符必须为数字

    2)设计判定表:
    在这里插入图片描述
    3)优化判定表
    4)用等价类的方法和边界值的方法来设计测试用例


http://chatgpt.dhexx.cn/article/H8GwJDmb.shtml

相关文章

测试基础理论

一,理清测试相关概念 1,质量 : 实体特性的总和,满足明确或隐含要求的能力 2,软件质量 :软件特性的总和,软件满足规定或潜在用户需求的能力 在1991年软件产品质量评价,国标标准ISO9126中定义是:软件满足规定或潜在用户需求特性的总和。 …

【软件测试】软件测试基础理论

软件测试基础理论 黑盒测试、白盒测试、灰盒测试 (1)黑盒测试 黑盒测试 又叫 功能测试、数据驱动测试 或 基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。 采用这种测试方法,测试工程师把测试对象看作一个黑盒子&…

软件测试 - 功能测试(测试理论+用例设计)

一、测试理论基础 1.软件的定义 软件:是计算机程序、程序所用的数据以及有关文档资料的集合 软件分为 系统软件 和 应用软件 系统软件:是生成、准备和执行其他程序所需要的一组文件和程序,比如:操作系统 应用软件:计…

测试理论概述

一、测试基础 1、什么是测试? 弄清楚产品实际功能与需求的差别的过程。 2、软件测试的目的: 根本目的是检验产品是否满足用户的需求。除此之外,可细分为三个层面: (1)证明:证明软件可用 (2)检测:发现缺陷&…

测试理论总结(一)

1.你是如何把控、推进测试流程的? 首先,测试之前,我会做好测试计划、测试人力分配、工作量的估算、测试策略、测试风险评估等;其次,测试中,我会尽量严格按照测试计划来执行,如果实际测试中出现…

超详细的测试理论基础知识

测试理论基础知识 文章目录 一、软件的定义与分类1、软件定义2、软件分类(1)按照功能划分(2)按照技术架构划分 二、软件测试的定义及目的1、定义:2、目的 三、软件测试流程四、V模型(重点)1、软…

测试基本理论-看这篇就够了

软件测试(Software Testing):在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 一、软件的分类? 1、按照功能划分: 【系统软件】:如操作…

测试理论基础(重点)

软件测试的原则 1. 只能证明软件存在问题,不能把证明不存在问题 2. 不能进行穷尽测试,应该分类别测试 3. 测试工作尽早介入,降低修复成本 4. 缺陷存在集群现象,二八原则:20%的模块中存在80%的缺陷 5. 测试依赖环境 6.…

sql左连接出现重复数据

情况说明:只需左表数据,右表数据只作为条件存在,左表数据与右边有1:n关系,左连接出现重复数据 原因分析:由于1:n关系,右边数据连接后处于隐藏状态(类似)&…

sql 左连接数据出现重复

数据出现数据重复问题,排查后发现竟然是,这里用简单demo举例,项目SQL不便展出~ 目录 一、简化举例 二、查询结果 一、简化举例 1、表aa 2、表bb 二、查询结果 1、无条件查询 2、左连接查询 右表数据有重复时,连接关系如下 111122 …

sql 左连接行数增加本质

sql 左,右,内连接 转载自:http://323229113.blog.163.com/blog/static/2185362820070172553209/ 感谢作者. 相信做数据分析的朋友,对数据库都比较敏感,作为一名数据分析人员,我们处理数据时总会遇见各种各样的问题,包括连接方式的选择,今天和大家分享一下…

SQL(左连接,右连接,内连接)

连接(Join):SQL语句采用JOIN的目的是关联两张及两张以上的表。 连接的使用方式:表1 Join 表2 On 关联条件 1 左连接(Left Join) 左连接(Left Join):多表拼接时,以左边的表为基准&a…

SQL语句理解左右连接和where

这里以左连接 left join 为例,说明 on 后面的条件与 where 后面条件的区别 创建测试表:TAB_1、TAB_2 create table TAB_1 as (select c as A,d as B,3 as C,4 as D from dualunion allselect a as A,b as B,1 as C,2 as D from dual); create table TA…

sql的内连接、左连接、右连接

多表联查时,有些数据没有对应另一个表的数据,即对应为空。 內连接:仅选出两张表中互相匹配的记录,有对应为空的则筛选出去,这些数据就不会被搜索出来。内连接是两个表中都必须有连接字段的对应值的记录,数…

SQL Server左连接

LEFT JOIN 子句用于查询来自多个表的数据。它返回左表中的所有行和右表中的匹配行。 如果在右表中找不到匹配的行,则使用 NULL 代替显示。 以下图说明了两个结果集的左连接结果: 以下说明如何使用 LEFT JOIN 子句来连接两个表 T1 和 T2 : 在…

SQLserver 外连接查询-左连接查询

外连接包括 : (左外连接 右外连接 全连接 简称 为:左连接 右) 先上定义: /*左连接 left join on 返回左表的所有行,对应右表中数据有一对多的联系,则全部展示,右表中没有匹配 上 &am…

SQL左连接数据变少

前一段时间,同学写sql碰到一个问题:两段sql连接看似一样,但是条数却不一样。原因是在左连接之后的where条件对数据进行了筛选,使得数据变少了。两段sql如下: select count(1)from (select *from KXAPP.I_CASH_LOAN_WH…

SQL 左连接中on后面加where和加and的区别

阅读目录 1、首先来谈谈什么是left join 2、再来谈谈on后面使用and和where的区别 3、总结 今天的最佳表现应该作为明天的最低要求 1、首先来谈谈什么是left join left join即左连接,比如表1左连接表2,以左表为主,表示以表1为主&#xff0c…

SQL 内连接、左连接、右连接案例

概念 左连接(Left Join):以左表为主表,左表中每条数据都会跟右表所有数据进行对比一次,当所有条件不满足时,对应的右表数据以 null 显示 1 语法:select * from tbl1 Left Join tbl2 on tbl1.ID…

SQL左连接中的on and和on where的区别

转载,原文链接:http://blog.csdn.net/xingzhemoluo/article/details/39677891 SQL左右连接中的on and和on where的区别 在使用left join时,on and和on where条件的区别如下: 1、on条件是在生成临时表时使用的条件,它不管on中的条…