zoukankan      html  css  js  c++  java
  • 19 用例设计方法-状态迁移

    状态迁移

    定义

    被测对象在特定输入条件下所保持的相应形式,关注被测对象的状态变化,在需求规格说明书中是否有不可到达、非法的状态,是否产生非法的状态迁移

     特点:与流程分析法相比,状态迁移针对的是同一个对象(订单、信息),同一个对象在不同阶段的不同状态;而流程分析法是针对不同对象,业务节点在不同对象间的切换;

    设计流程

    1. 根据需求梳理状态节点
    2. 绘制状态迁移图(方便画出各个状态的转换关系,但是不利于划分流转路径,所以需要状态迁移树)
    3. 绘制状态迁移树
      • 找到起始节点;如果没有明确起始节点,先假定一个起始节点
      • 依据深度优先、广度优先的原则,先画出主干流程,然后再出去分支流程;
      • 如果之前已经出现相同的节点,则停止继续,否则会一直循环下去
    4. 抽取测试用例

    实例 1

    1. 分析需求,获取节点、状态信息
    2. 画状态迁移图(各个节点是如何流转的) 
    3. 画状态迁移树(根据迁移图画出迁移树)
    4. 抽取规则:每个终点是一个用例;根据迁移图,共计 4 个用例,如下:
      1. 预定-已取消
      2. 预定-已支付-已取消
      3. 预定-已支付-已出票-已取消
      4. 预定-已支付-已出票-已使用

    实例 2 

    需求描述:某个文本编辑器中的字体颜色有黑色、红色、蓝色,现测试字体颜色可以互相转换

    • 分析需求:字体是对象,颜色是状态,所以状态迁移指的是颜色的改变
    • 迁移图
    • 迁移树
      • 写到终点的时候,无需继续,再写就是循环了。比如“黑色”,如果继续,相当于将当前的迁移树重复一遍
    • 用例
      • 黑-红-黑
      • 黑-红-蓝
      • 黑-蓝-黑
      • 黑-蓝-红
  • 相关阅读:
    TensorFlow---基础---GFile
    TensorFlow---image recognition--classify_image运行、文件说明与错误(路径)解决
    gcc -D
    c语言数据读入---sscanf、fscanf
    Mysql--视图
    Mysql的索引
    每天学点linux命令之nc
    Redis基础---链接管理
    iOS WKWebview 网页开发适配指南
    Win7/Win10下搭建Go语言开发环境
  • 原文地址:https://www.cnblogs.com/George19950505/p/12251956.html
Copyright © 2011-2022 走看看