基于模型的测试方法
上一篇 /
下一篇 2017-09-11 12:34:38
/ 个人分类:测试用例
一、过程
操作步骤:
1、 根据需求规格说明书创建模型(行为模型);
2、 根据模型自动生成测试用例和期望结果;
3、 执行用例并收集执行结果;
4、 对结果进行分析反馈给需求说明书和模型;
二、具体操作步骤
1、确定业务流程;
(1)、创建系统级别的业务流图
(2)、创建单个模块的业务流图
例如:Mpos交易路由业务流图
2、对各项业务流程进行建模(以Mpos业务流程为例);
通过有限状态机创建状态模型
(1)、根据Mpos业务流程,收集状态
共有9个状态,包括:
1、 开始状态;
2、 已刷卡状态;
3、 已筛选身份状态;
4、 已成本规则状态;
5、 拿到合适的身份
6、 结束状态
(2)、收集状态改变相关的操作
共有7个,包括:
1、 刷卡消费;
2、 机构规则、路由规则筛选;
3、 成本规则筛选;
4、 适用范围筛选;
(3)、画出业务的状态模型图(框体中为状态、链接线为操作)
(4)、封装所有的业务操作,方法体中为输入的属性
1、刷卡消费
Int flushCard(){
Int cardNum;
Int cardTime;
…….
}
对于前期准备例如录入数据没有明显的状态,因此无法使用有限状态机模型,此时需要采用活动图建模(UML建模)(例如数据准备,前期数据录入系统)
活动图是有一系列的操作构成没有状态。处理过程如下:
(1)、画出活动图(由一系列的操作集构成)
(2)、封装操作方法,例如
创建用户
Int CreateUser(){
Int userID;
String username;
……..
}
3、使用工具解析模型;
4、生成用例和预期结果,运行
实现测试工具可以识别模型,并使用不同的算法遍历的方法找到所有可能的操作路径,进而自动生成测试代码。(3、4合并)
工具的基本功能描述如下:
1、 建模功能:根据需求规格说明书在工具中手工创建模型;
2、 识别模型中操作:识别模型中的所有操作形成业务抽象库;
3、 遍历模型的操作:使用不同的算法遍历模型的操作,产生不同的测试场景;列举所有的输入参数,根据输入参数自动生成测试用例存储在用例管理器中;
算法:随机行走遍历算法、操作遍历算法、状态遍历算法共同生成用例;
4、 通过接口适配到自动化测试执行工具:将生成的用例适配到自动化测试执行工具中根期望结果比对生成结果并分析;
收藏
举报
TAG: