功能测试---状态迁移法
前言:通过状态能否迁移,从而设计测试用例的方法
状态迁移法主要关注在测试状态转移的正确性上面
实例:
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)需求评审 (2)编写测试计划与测试方案 (3)测试用例设计与评审 (4)测试执行与BUG跟踪 (5)编写测试报告 2.测试用例需求来源 (1)需求说明书, ...
- 3年测试经验,用例设计竟然不知道状态迁移法?
1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...
- 都3年测试经验了,用例设计还不知道状态迁移法?
1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...
- 一文自测中级门槛:用例设计状态迁移法
1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等.通过构 ...
- 状态迁移法你还不会?看看这篇文章
文章末尾给大家留下了大量的福利 前言 今天笔者想和大家来聊聊状态迁移,详细的讲解笔者就放在正文中了,废话不多说咱们直接进入正题. 1.概念 状态迁移法主要关注在测试状态转移的正确性上面.对于一个有限状 ...
- 状态迁移法——测试权限审批功能
运用状态迁移法来设计测试用例,关键是划出有限状态机,再根据状态之间转换的条件来设计测试用例. 比如说,我们测试一个权限审批的功能.用户在登录系统之前需要申请权限,管理员审批通过后,用户才能正常登录.在 ...
- 手机软件系统测试用例设计大全
一. 等价类分析法 二. 边界值分析 三. 错误猜测法 四. 判定表法 五. 流程分析方法 六. 正交试验设计法 七. 状态迁移法 等价类分析法 等价类划分方法针对手机状态大致可以归几个大类: 按键类 ...
- 【功能测试】part2
目录 软件测试分类 1.阶段划分 2.是否查看源代码分类 3.是否运行分类 4.是否自动化 4.其他分类的测试 软件质量模型 软件开发过程模型(研发) 瀑布模型(最常见) 快速原型模型( ...
- TPshop项目-功能测试(2)
文章目录 一.测试用例 二.banner图测试 三.导航栏测试 四.购物车测试 五.状态迁移法 六.顶部区域测试点 七.导出会员列表测试点 八.添加会员 九.发送站内信 十.会员列表测试点 一.测试用 ...
最新文章
- 测试报告-1.1组成和要点
- 【Flutter】Image 组件 ( 内存加载 Placeholder | transparent_image 透明图像插件 )
- android x86一键安装,安卓
- 北邮OJ 85. Three Points On A Line
- vue循环如何传参数 php,vue循环列表动态数据的处理方法(代码)
- java高级教程_高级Java教程
- scala 获取数组中元素_从Scala中的元素列表中获取随机元素
- 技术人员如何跟传统行业打交道?
- Ext Grid Json分页(asp.net)
- 命中率极高的 Go 面试题,赶紧收藏!
- drupal_Drupal,物联网和开放式硬件的交集
- 【kafka】Flink 消费 kafka Received unknown topic topic/partition may not exist Describe access to it
- java对象比较排序
- python创建字符串数组_python – 如何为多处理初始化字符串数组
- 《研磨设计模式》读书笔记之:适配器模式、单例模式
- 免费试用一年微软云服务【图文并茂】
- 自媒体人如何在千氪实现月收入过万?
- lombok 不生效
- 干货收集和整理:Pytorch,Keras,数据分析
- 小程序商品规格选择高亮功能的实现