小马的测试用例那些事 测试用例设计之状态转换法
老马
·
2018年11月12日
·
1628 次阅读
「原创声明:保留所有权利,禁止转载」
定义
在遇到有事务流或由于某种条件成立导致状态改变的软件项目时,如何进行测试用例的设计就比较麻烦。其他的各种方法,每个被测对象之间是没有相互的关联或数据流向发生,遇到这样的事务流软件就要考虑用其他方法进行用例的设计了。
以前在讲操作系统原理时,曾经提到过进程的状态转换。我们看以下图形:
当进程从就绪队列中被进程调度算法选中的时候,它就被调进 CPU 里执行,这个时候进程的状态由就绪状态变换到执行状态;而当该进程执行完毕的时候,是由于所分配的时间片用完,进程调度算法又回到就绪队列里重新提取。当进程执行到一定阶段时,由于发生 I/O 事件,例如:外部数据的输入或运行的中间数据的输出,这时候 CPU 必须进行中断处理,那么该进程就由执行状态转变成阻塞状态,等待事件的完成;当事件完成后,进程从阻塞状态就转换成就绪状态,等待进程调度算法的再一次选中。
以上是操作系统中进程的状态迁徙过程。
使用步骤
我们以 QQ 登录界面为例子,用来讲解状态图法设计测试用例。
(一)通过对 QQ 登录界面的分析,我们看到有 4 个输入项:
ip1:输入帐号
ip2:输入密码
ip3:点击 “登录” 按钮
ip4:点击 “关闭” 按钮
(二)那么从 QQ 启动界面开始,进行状态迁徙分析:
第 1 轮状态图:
第 2 轮状态图:
第 3 轮状态图:
(三)从最后的状态图中可以看出 QQ 登录界面最后的状态有 7 种,那么从这 7 种状态中构造出状态类表:
(四)有一些用例没有列出,望大家自己思考,最后所有的测试用例都省略
备注说明:
该文应该是搜集整理过来的,只是觉的定义和解释的比较规范,非本人原创.若有不当,请联系我,更新援引说明.
TesterHome 为用户提供「保留所有权利,禁止转载」的选项。
除非获得原作者的单独授权,任何第三方不得转载标注了「原创声明:保留所有权利,禁止转载」的内容,否则均视为侵权。
具体请参见TesterHome 知识产权保护协议。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。