黑盒测试用例设计模式-流程分析(上)
来源:互联网 发布:osx与ios内核编程 pdf 编辑:程序博客网 时间:2024/05/16 04:57
黑盒测试用例设计模式-流程分析(上)
流程分析法主要针对测试场景类型属于流程测试场景的测试项下的测试子项进行设计,是从白盒测试设计方法中的路径覆盖
分析法借鉴过来的一种很重要的方法。在白盒测试中,路径就是指函数代码的某个分支组合,路径覆盖法需要构造足够的用例覆盖
函数的所有代码路径。在黑盒测试中,若将软件系统的某个流程看成路径的话,则可以针对该路径使用路径分析的方法设计测试
用例。
采用路径分析的方法设计测试用例的好处:
一、降低测试用例设计的难度。即只要清楚程序流程、看懂程序流程图,就可以设计出质量较高的测试用例;
二、是在测试资源紧张的情况下,可以据此有选择的执行测试用例,而非全部依靠经验做取舍。
使用流程分析法的具体实施步骤:
步骤1:画出业务流程图;
步骤2:定义状态节点和条件分支;
步骤3:确定测试路径;
步骤4:选取测试数据,构造测试用例。
例子:
一、需求:使用ATM机取款。
二、分析:
1、测试需求分析:
a).用户向ATM取款机中插入银行卡,若银行卡合法,取款机提示用户输入密码;
若插入无效银行卡,取款机提示用户“银行卡无效”,并自动退卡。
b).用户输入银行卡密码,取款机将密码传至银行主机进行校验。若密码正确,取款机提示用户输入取款金额,
提示信息:“请输入取款金额:”若密码错误,取款机提示用户:“密码错误!”,并退回输入密码界面。
当三次输入密码错误时,自动退卡,锁卡。提示:“密码错误,密码输入次数超限!”。
c).用户输入取款金额,系统校验金额正确。即取款机余款大于用户取款金额。提示:“请确认取款金额为XX!”。
用户按下确认键,确认取款XX。若用户输入取款金额不正确,提示:“输入错误!”。
此处为分析方便忽略输入取款金额错误的各种情况下的异常流程处理,降低分析的复杂度。
d).系统同步银行主机,点钞票,输出给用户并减去用户卡中相应数目的存款金额。
若卡内余额小于用户取款金额,则提示:“余额不足!”,并退回输入取款金额界面。
若取款机与银行主机通信超时、通信中断、传输错误等情况,提示:“连接超时,本次操作取消”。
若主机已经做了数据库操作,减去了用户存款余额,则要做回退操作。
e).用户取款,银行卡退卡。用户拔出银行卡。取款机恢复初始界面。正常取款操作结束。
若用户未按时拿走取出的钱款、用户未按时拔出银行卡,则取款机做相应异常处理操作。
2、测试设计方法分析(流程分析法):
根据需求,画出业务流程图,如图1所示。
图1
定义状态节点和条件分支:
上面的业务流程图中,只描述正常流程-取款成功的情况。异常流程未做描述,是为了分析方便,实际中异常流程必须在业务
流程图中描述清楚状态、分支等。
3、用例设计(确定测试路径):
需求描述及流程图中,ATM取款机的提示信息对应于测试用例中的预期输出部分,用户的操作对应测试用例中的测试步骤部分。
原则是一条有效路径使用一个测试用例覆盖。
依据业务流程图确定测试路径,即需要测试的业务流程。其主要包含三个方面:
a).正常流程,取款成功(基本流程):对应一次性取款成功;
b).异常流程,取款失败(分支流程):对应取款失败,包括退卡、吞卡;
c).异常流程,取款成功(循环流程):对应取款中间出现意外,比如密码输入错误,但是最终成功取钱的情况。
三、用例详细(选取测试数据,构造测试用例):
根据上一步确定的测试路径,写出用例详细。具体略。
总结:
流程分析法适用于有先后顺序的测试场景。常用于业务流程测试、安装流程测试等。流程分析法重点在于测试流程。因此,一般
每个流程用一个测试用例验证(实际写用例经常是按功能模块组织用例,而不是业务流程,否则看起来太乱)。但是,流程测试没有
问题并不能说明系统功能没有问题,还需要针对单步功能进行测试。对于包含复杂流程的系统,只有功能点和处理流程都进行测试
覆盖,才算是比较充分的测试(事实上,受时间成本的限制,很难有所谓充分的测试)。
注:
用例设计要考虑三个层次的问题:策略、模式、方法。黑盒测试就是一种策略,流程分析即是一种模式,也是一种方法。
怎样才叫精通测试用例设计? 实践是检验真理的唯一标准。理论也是来源于实践的,特别是在工程领域。懂得理论而没有实践的,其实还是不懂嘛。反而不如
有一定实践经验的人更接近真理。有大量实践经验,而又善于总结的,才可能成为专家。
- 黑盒测试用例设计模式-流程分析(上)
- 黑盒测试用例设计模式-边界值分析(上)
- 黑盒测试用例设计模式-等价类划分(上)
- 黑盒测试用例设计模式-判定表(上)
- 黑盒测试用例设计模式-正交试验(上)
- 黑盒测试用例设计模式-状态迁移(上)
- 黑盒测试用例设计模式-输入域分析
- 黑盒测试用例设计模式-输出域分析
- 黑盒测试用例设计模式-异常分析
- 黑盒测试用例设计
- 黑盒测试用例设计
- 黑盒测试用例设计模式-因果图
- 黑盒测试用例设计模式-错误猜测
- 黑盒测试用例设计案例
- 黑盒测试用例设计方法
- 黑盒测试用例设计方法
- 黑盒测试用例设计方法
- 黑盒测试用例设计方法
- php学习笔记(十六)图片的处理缩放、旋转、透明、锐化、翻转、裁剪
- 使用GDAL下载并转换SRTM的DEM数据(二)
- 焦虑和孤独
- 令人头痛的linux编译错误 “未知存储大小"
- SQLServer:Join,Left Join,Right Join
- 黑盒测试用例设计模式-流程分析(上)
- 本地调试HBase源码
- android布局属性详解
- HttpWatch工具简介及使用技巧
- 自己写的实时爬取 CSDN 2012 博客之星 88位候选人排名
- QT QObject::connect函数的学习
- hdu 3648 Median Filter
- Introduction to the calculus of variations
- 编译 Busybox 常遇到的问题 SYS_ioprio_set ioprio_get