软件测试(四):软件测试用例设计

文章目录

    • 测试设计与测试用例
      • 测试设计
      • 测试分析和设计的主要任务
      • 确定测试条件
      • 测试用例
      • 测试用例关键点
      • 测试用例案例
      • 测试用例常用设计方法
      • 测试用例demo
    • 等价类划分法
      • 等价类划分定义
      • 等价类划分原则
      • 基于等价类划分的用例设计
      • 等价类划分实战
      • 等价类的特点
      • 等价类划分要注意的问题
      • 经典等价类划分面试题
    • 边界值分析法
      • 边界值法定义
      • 边界值设计原则
      • 边界值设计用例
    • 因果图与判定表法
      • 因果图法
      • 因果图-判定表
      • 判定表
      • 设计步骤
      • 实战
        • 分析输入条件和输出条件
        • 分析、简化并画出判定表
        • 得到测试用例
      • 经典因果图—判定表面试题
    • 正交实验法
      • 正交实验法定义
      • 正交实验法设计步骤
      • 正交实验法例子
    • 测试场景设计
      • 场景法原理
      • 场景法基础设计
      • 场景法设计步骤
      • 场景法设计例子
    • 测试用例综合设计

测试设计与测试用例

测试设计

测试设计是将概括的测试目标转化为具体的测试条件和测试用例的一系列活动

测试分析和设计的主要任务

  • 评审测试依据(需求,系统架构、设计和接口说明)
  • 评估测试依据和测试对象的可靠性
  • 通过对测试项、规格说明、测试对象行为和结构的分析,识别测试条件并确定优先级
  • 设计测试用例,确定优先级
  • 确定测试条件和测试用例所需的必要的测试数据

确定测试条件

  • 依据在测试策略或测试计划中确定的测试技术
  • 通过对测试依据和测试目标的分析,可以确定需要测试的内容,获得测试条件

测试用例

测试用例是通过使用在测试计划中确定的测试技术,对于已确定的测试条件进行逐步推敲,精炼而设计出来的重点说明如何具体操作产生何种结果的文档。

测试用例应该具有可重复性、可验证性和需求可追踪性。

测试用例关键点

  • 前提条件,如项目或局部测试环境的需求,及其交付计划
  • 测试步骤
  • 测试数据
  • 预期结果

测试用例案例

等价类划分法

  • 确定测试用例:

    • 为等价类表中的每一个等价类分配一个唯一的编
    • 设计一个新的测试用例,使他能够尽量覆盖尚未覆盖的有效等价类
    • 重复这一步骤,使得所有有效等价类均被测试用例所覆盖
    • 与上步类似,设计一个新的测试用例,使他只覆盖一个无效等价类
  • 完善测试用例:

    • 根据上面划分的4个等价类,我们至少需要有5个测试用例
  • 由于允许输入的数值在-99到99之间,所以我们可以把-99和99看作两个边界值。我们测试的时候可以取紧邻边界值的数值和边界值本身作为输入

    判定表通常由四个部分组成:

    • 条件桩:列出了问题的所有条件,通常认为列出得条件的次序无关紧要。
    • 动作桩:列出了问题规定可能采取的操作,这些操作的排列顺序没有约束。
    • 条件项:列出针对它左列条件的取值,在所有可能情况下的真假值
    • 动作项:列出在条件项的各种取值情况下应该采取的动作

    设计步骤

    1. 分析软件规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。
    2. 分析软件规格说明中语义的内容,找出原因与结果之间、原因与原因之间对应的关系,根据这些关系画出因果图。
    3. 由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特点的情况,在因果图上使用一些记 表明约束或限制条件。
    4. 把因果图转换为判定表
    5. 根据判定表中的每一列设计测试用例

    实战

    我们继续以计算器的例子,根据因果图+判定表设计测试用例测试两位数加法计算器

    分析输入条件和输出条件

    • 输入1:

      • 条件1: 0
      • 条件2: -99
      • 条件3: x
      • 条件4: x > 99
    • 输入2:

      • 条件1: 0
      • 条件2: -99
      • 条件3: x
      • 条件4: x > 99
    • 输出

      • 正确计算
      • 错误提示

    分析、简化并画出判定表

    经典因果图—判定表面试题

    • 问题:某厂工资发放
    • 描述、分析:工资分为年薪制a1,月薪制a2;错误程度分为普通a3,严重a4;
    • 工资为a1的员工犯普通错误的扣工资2%(b1),犯严重错误扣工资6% (b2);
    • 工资为a2的员工犯普通错误的扣工资4%(b3),犯严重错误扣工资8% (b4);
    • 其中,a1和a2为互斥;b1,b2和b3,b4是互斥;a3和a4可以同时具备。

    正交实验法

    正交实验法定义

    • 正交试验设计法是从大量的试验点中挑选出适量的、有代表性的表,应用依据迦罗卡瓦理论导出的“正交表”,合理的安排试验的一种科学的试验设计方法。
    • 指标:通常把判断试验结果优势的标准叫做试验的指标
    • 因子(因素factor):所有影响试验指标的条件
    • 因子的状态(水平level):而影响实验因子的,叫做因子的状态(因子变量的取值)

    正交实验法设计步骤

    1. 提取功能说明,构造因子——状态表

      正交实验法例子

      我们现在要测试支付宝web 站,该站点有大量的服务器和操作系统,并且有许多具有各种插件的浏览器需要考虑

      1. 提取系统功能说明中的因子

        • web浏览器:ie11、Chrome、firefox
        • 插件:无、flash、支付宝插件
        • 应用服务器:iis 、Apache、jetty
        • 操作系统:Windows2000、WindowsNT、Linux
      2. 分析各因子的状态

        • 插件:1 = none、2 = flash、3 = 支付宝插件
        • web浏览器:1 = ie11、2 = Chrome、3 = firefox
        • 应用服务器:1 = iis 、2 = Apache、3 = jetty
        • 操作系统:1 = Windows2000、2 = WindowsNT、3 = Linux
      3. 选择正交表

          测试场景设计

          场景法原理

          现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景形成了场景,而同一事件不同的触发顺序和处理结果就形成了事件流。这种在软件设计方面的思想可以引入到软件测试中,可以生动地描绘出事件触发时的情景,有利于设计测试用例,同时使测试用例更容易理解和执行。

          场景法基础设计

          • 经过用例的每条路径都用基本流和备选流来表示,直黑线表示基本流,是经过用例的最简单的路径
          • 备选流用不同的色彩表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中
          • 也可能起源于另一个备选流,或者终止用例而不再重新加入到某个流
          • 每个经过用例的可能路径,可以确定不同的用例场景
          • 从基本流开始,再将基本流和备选流结合起来,可以确定以下用例场景:
            • 场景1 基本流
            • 场景2 基本流 备选流1
            • 场景3 基本流 备选流1 备选流2
            • 场景4 基本流 备选流3
            • 场景5 基本流 备选流3 备选流1
            • 场景6 基本流 备选流3 备选流1 备选流2
            • 场景7 基本流 备选流4
            • 场景8 基本流 备选流3 备选流4

          • 根据基本流和备选流来确定场景

      声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2022年4月9日
    下一篇 2022年4月9日

    相关推荐