当前位置: 首页 > biancheng >正文

15.10 - 状态转移测试

目录

一、概述

二、状态转移测试的步骤

三、状态覆盖

1、状态覆盖的概念

2、单步转移

3、全转移

4、多步转移

四、举例说明

1、规格说明

2、状态转移图

3、状态转移状态-事件表

4、状态转移树

5、状态转移路径


一、概述

  • 把软件若干种状态之间的转换条件和转换路径抽象出来,从覆盖所有状态转移路径的角度去设计测试用例,关注状态的转移是否正确。

二、状态转移测试的步骤

1、分析需求,整理所有状态
2、画出状态转移图
3、根据状态转移图,列出状态-事件表
4、根据状态转移图,画出状态转换树(测试路径)
5、根据状态转化树,按照单步转移覆盖的要求,推导测试路径
6、根据测试路径逐一编写测试用例

三、状态覆盖

1、状态覆盖的概念

  • 使得状态模型中的所有状态都要被访问过

2、单步转移

  • 用来覆盖状态模型中所有有效的单步
  • 例如下面案例中从“预定”到“已取消”就是一个有效的单步

3、全转移

  • 用来覆盖状态模型中所有有效的转移和无效的转移
  • 无效转移:状态模型中未指定有效转移事件后的状态的转移

4、多步转移

  • 应能覆盖状态模型中N+1步转移的有效序列

四、举例说明

1、规格说明

  • 客户在线向公司预定产品,此时产品的信息处于“预定”状态
  • 客户支付了产品费用后,产品信息变为“已支付”状态
  • 当客户到公司提取产品后,产品信息变为“已出货”状态
  • 当产品完成交付后,产品信息变为“已交付”状态
  • 当客户在完成交付前,取消自己的订购,如果支付了产品费用,则可以退款,取消后,产品信息处于“已取消”状态

2、状态转移图

3、状态转移状态-事件表

4、状态转移树

5、状态转移路径

相关文章:

  • 牛客练习赛#84 F 莫比乌斯反演+杜教筛+技巧+斐波那契数列和gcd的结论+矩阵快速幂
  • ZZNUOJ_用C语言编写程序实现1342:支配值数目(附完整源码)
  • java毕业设计后勤管理系统餐饮评价监督系统(附源码、数据库)
  • 前端基础学习笔记
  • 【TS】联合类型--类型断言--类型推断
  • 谈笑风声的秘密
  • QT影城网上售票系统
  • NetCDF数据在ArcMap中的使用
  • 打怪升级(考验思路)
  • 持续精进,改变自己