前言:通过状态能否迁移,从而设计测试用例的方法

状态迁移法主要关注在测试状态转移的正确性上面

实例

MP3播放器功能状态-事件表如下,请用状态迁移法设计用例。

并且当MP3曲目在起点时不能按R键,当MP3曲目在末端时不能按P、F键。

按键

Idle(停)

播放

录音

R(倒)

·

·

P(播放)

播放

播放

·

·

F(进)

·

·

RC(录音)

录音

·

·

·

·

S(Idle)

·

idle

idle

idle

idle

概念: 把按键的功能可以看成状态。分为五个状态:播放、停止、前进、倒退、录音;

操作步骤:

1.从需求中找出所有的状态(概念中提到)

2.画n*n矩阵图(实例中以给出)

3.分析状态之间的可达性(如果状态A通过某个操作直接可达状态B,则表示状态A可达状态B。)

注意:可达是指一步可达,中间只有一个操作。

4.根据矩阵图画状态树(树状图)

深度优先:1、先找一个状态为根节点(主要依据用户使用最开始的状态,作为根节点)

2、画根节点可达的所有状态

3、尽可能的分析最左侧的节点,让状态树尽量向下延伸

广度优先:1、先找一个状态为根节点

2、在画根节点所有可达的所有状态

3、逐层按照从左到右的顺序分析并画图

4、一个状态只分析一次

5、直到所有的状态都画完一次

5.从根节点到叶子节点,每条路径就对应一条测试用例

优点:根据状态之间的可达性,可以快速设计出测试用例

缺点:设计出来的测试用例都是正常的用例(包括正交试验法设计出来的也是正常的用例)

不包括状态之间不可达的情况(大部分状态之间不可达的情况,也无法设计和执行测试用               例)

适用范围:需求中明确存在多种状态,并且这种状态间可以从一种状态迁移到另一种状态,或者                     可以把操作看成一种状态

结论:状态迁移图法实际上是测试了各种状态的转换,这些状态转换的测试在实际工作             中是容易遗漏的。
           状态迁移法保证了系统中所有状态之间的转换都被覆盖了。
           状态迁移图法给出了一种将多个状态的转换串起来进行测试的思路。

功能测试---状态迁移法相关推荐

  1. 编写测试用例基本要求、非功能性测试和状态迁移法介绍

    编写测试用例基本要求 1.项目测试流程 (1)需求评审 (2)编写测试计划与测试方案 (3)测试用例设计与评审 (4)测试执行与BUG跟踪 (5)编写测试报告 2.测试用例需求来源 (1)需求说明书, ...

  2. 3年测试经验,用例设计竟然不知道状态迁移法?

    1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...

  3. 都3年测试经验了,用例设计还不知道状态迁移法?

    1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...

  4. 一文自测中级门槛:用例设计状态迁移法

    1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...

  5. 状态迁移法你还不会?看看这篇文章

    文章末尾给大家留下了大量的福利 前言 今天笔者想和大家来聊聊状态迁移,详细的讲解笔者就放在正文中了,废话不多说咱们直接进入正题. 1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状 ...

  6. 状态迁移法——测试权限审批功能

    运用状态迁移法来设计测试用例,关键是划出有限状态机,再根据状态之间转换的条件来设计测试用例. 比如说,我们测试一个权限审批的功能.用户在登录系统之前需要申请权限,管理员审批通过后,用户才能正常登录.在 ...

  7. 手机软件系统测试用例设计大全

    一. 等价类分析法 二. 边界值分析 三. 错误猜测法 四. 判定表法 五. 流程分析方法 六. 正交试验设计法 七. 状态迁移法 等价类分析法 等价类划分方法针对手机状态大致可以归几个大类: 按键类 ...

  8. 【功能测试】part2

    目录​​​​​​​ 软件测试分类 1.阶段划分 2.是否查看源代码分类 3.是否运行分类 4.是否自动化 4.其他分类的测试 软件质量模型 软件开发过程模型(研发) 瀑布模型(最常见) 快速原型模型( ...

  9. TPshop项目-功能测试(2)

    文章目录 一.测试用例 二.banner图测试 三.导航栏测试 四.购物车测试 五.状态迁移法 六.顶部区域测试点 七.导出会员列表测试点 八.添加会员 九.发送站内信 十.会员列表测试点 一.测试用 ...

最新文章

  1. 测试报告-1.1组成和要点
  2. 【Flutter】Image 组件 ( 内存加载 Placeholder | transparent_image 透明图像插件 )
  3. android x86一键安装,安卓
  4. 北邮OJ 85. Three Points On A Line
  5. vue循环如何传参数 php,vue循环列表动态数据的处理方法(代码)
  6. java高级教程_高级Java教程
  7. scala 获取数组中元素_从Scala中的元素列表中获取随机元素
  8. 技术人员如何跟传统行业打交道?
  9. Ext Grid Json分页(asp.net)
  10. 命中率极高的 Go 面试题,赶紧收藏!
  11. drupal_Drupal,物联网和开放式硬件的交集
  12. 【kafka】Flink 消费 kafka Received unknown topic topic/partition may not exist Describe access to it
  13. java对象比较排序
  14. python创建字符串数组_python – 如何为多处理初始化字符串数组
  15. 《研磨设计模式》读书笔记之:适配器模式、单例模式
  16. 免费试用一年微软云服务【图文并茂】
  17. 自媒体人如何在千氪实现月收入过万?
  18. lombok 不生效
  19. 干货收集和整理:Pytorch,Keras,数据分析
  20. 小程序商品规格选择高亮功能的实现

热门文章

  1. C++课后习题第五章
  2. 工厂装配线 3D 可视化看板,让管理者快速定位生产瓶颈!
  3. 五邑大学c语言编程题,2015五邑大学C语言编程题
  4. 从头开始构建Book Recommender引擎并将其部署到Web应用程序
  5. ffmpeg中avformat_open_input超时设置(附件一)
  6. 模型导入Qt 3D Studio
  7. MySQL的下载和安装(msi)
  8. 第十一周上机项目二拓展
  9. C#为IE添加可信任站点(注册表修改)
  10. vue canvas实现手写签字