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

权限状态有三种:有权限、权限待审批、无权限三种状态,他们之间可以相互转换。我们可以据此设计以下测试用例:

  1. 无权限用户申请权限,期间登录提示权限待审批,耐心等待审批结果。
  2. 管理员审批通过,用户正常登录。
  3. 管理员审批不通过,用户登录失败。提示用户是否重新发起权限申请。(此状态机无结束出口,循环)
  4. 管理员取消授权用户。用户登录失败。提示用户是否重新发起权限申请。(此状态机无结束出口,循环)

如果没有有限状态机的提醒,我们容易遗漏测试“权限待审批”状态的情况。也容易遗漏管理员审批不通过后、界面只是提示审批不通过、但是不提供重新申请权限的入口的这种情况。

状态迁移法——测试权限审批功能相关推荐

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

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

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

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

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

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

  4. php审批功能的实现代码,PHP实现基于状态的责任链审批模式详解

    本文实例讲述了PHP实现基于状态的责任链审批模式.分享给大家供大家参考,具体如下: 我们开发网站,除了前后,还有后台,除了内容管理,很多时候要涉及到『审批』. 比如:商务部要做个专题推广活动,活动中需 ...

  5. APP端测试常见的功能点

                                  一.安装.卸载.更新.运行 1.安装.卸载 应用是否可以正常安装(命令行安装:apk/ipa安装包安装)(有网,无网是否都正常) 卸载过程中 ...

  6. 多人审批功能简单实现

    文章目录 前言 一.数据库设计 2.实现逻辑 前言 多人审批功能简单实现 一.数据库设计 流程表 CREATE TABLE `system_flow` (`id` int NOT NULL AUTO_ ...

  7. 功能测试---状态迁移法

    前言:通过状态能否迁移,从而设计测试用例的方法 状态迁移法主要关注在测试状态转移的正确性上面 实例: MP3播放器功能状态-事件表如下,请用状态迁移法设计用例. 并且当MP3曲目在起点时不能按R键,当 ...

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

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

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

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

最新文章

  1. 【算法系列】一道面试算法题
  2. Git叉子实际上是Git克隆吗?
  3. 【从零学习openCV】opecv操作像素
  4. 切面是异步还是同步操作‘_Autofac的AOP面向切面编程研究
  5. 自然归并排序 c++ (原创)
  6. mysqlbinlog工具_带你解析MySQL binlog
  7. python发送邮件并返回提示_python-邮件提醒功能
  8. [译+改]最长回文子串(Longest Palindromic Substring) Part II
  9. (转)linux下vi编辑器编写C语言的配置
  10. php多进程pcntl学习(一)
  11. 华为鸿蒙乌鸦快爷,华为鸿蒙第一批名单
  12. (android之sqlite三)单机Sqlite数据库
  13. No goals have been specified for this build. You must specify a valid lifecycle phase or a goal.....
  14. 判断手机上是否安装某个APP(iOS)
  15. jdk下载/Linux64位 jdk1.8 jdk-8u161下载
  16. 用Radeon RAMDisk在Windows 10中创建关机或重启不消失的内存虚拟盘
  17. 《个人信息安全规范 (2019-6-21) 》征求意见稿的最新变化
  18. 计算机中我的云文档在哪儿里,wps云文档可以删除吗在哪里删除
  19. Python数据分析案例-消费者用户画像
  20. 在1分钟K线图中显示分时图均价线的公式

热门文章

  1. 看过来!2021年下半年软考报考最全流程来啦!
  2. 购买电脑,选择Windows8预装,很超值
  3. aapt 命令生成 R文件
  4. contenteditable属性将标签变为可编辑状态,可用于在线编辑修改文本
  5. 《计算机应用研究》投稿经历和时间节点
  6. 解决微信小程序云开发ios读取txt文件问题
  7. 计算机组成第五章之指令周期
  8. 【智能家居远程控制系统】ESP8266连接阿里云(二)
  9. Android 低功耗BLE蓝牙适配总结
  10. HBase优化之Apache Phoenix二级索引