The invention provides a method and system, Web service test case generation method based on extended state machine model: access to Web services description language WSDL interface documentation from the Web service interface, and according to the extended EFSM state machine model WSDL to build the initial document interface; according to the control variables in the WSDL of the document will be the initial EFSM model the state of the merge and delete processing, and according to the process of merger and delete the generated state migration path; according to the feasibility of the path metrics methods to detect state migration path infeasible path, EFSM path model will not be removed after improved; according to the regular expression will be a feasible path EFSM model improved by ergodic, abstract test case generation Web service set. The invention can remove the original EFSM interaction control and data flow model leads to infeasible path testing, EFSM extended state machine model is improved, thus reducing unnecessary testing work, improve the efficiency of test case generation.
【技术实现步骤摘要】
基于扩展状态机模型的Web服务测试用例生成方法及系统
本专利技术主要涉及Web服务测试领域,具体涉及一种基于扩展状态机模型的Web服务测试用例生成方法及系统。
技术介绍
Web服务是一个软件系统,被设计来支持网络上机器之间的可互操作的交互,它有一个清晰的、机器可读的、通用的标准描述(WSDL),其它系统以该描述中说明的方式与它交互,具体使用SOAP消息以及其它Web相关标准,具有完全开放、松散耦合、标准协议规范和高度可集成能力等特征。目前Web服务已广泛应用与通信、金融、地理信息、电子商务、电子政务、手持设备等领域,成为当前和未来网络分布式应用的主流软件开发技术。而由于Web服务技术规范的复杂行、应用部署的网络分布性和各种各样的运行时行为特征等特点,使得传统的软件测试技术已不能完全满足其测试工作的要求。除此之外,Web服务提供了一种机器对机器的通讯机制,其软件测试策略主要基于服务接口进行设计和实现,与传统需要大量人工干预的测试方法不同,难以通过手工测试方式完成,需要采用自动化的测试方法。传统的软件测试是由测试小组和开发人员共同负责软件的测试工作,并且拥有软件的源代码,可建立丰富的测试模型,而Web服务测试需要服务提供者、服务中介和服务请求者共同参与到测试过程,没有服务的代码,有限的测试模型。传统软件的测试是集中的多个阶段的测试,而Web服务测试是分布式的、远程的多阶段测试。因此需要不同于传统软件测试的Web服务测试。软件模型是对软件结构和行为的抽象,生成测试用例需要先将被测软件转换成某种模型,它是对被测软件的精确描述,便于对软件进行理解和实现,这种技术被成 ...
【技术保护点】
一种基于扩展状态机模型的Web服务测试用例生成方法,其特征在于,包括如下步骤:步骤A:从Web服务接口获取Web服务描述语言的接口文档WSDL,并根据接口文档WSDL构建初始的扩展状态机模型EFSM;步骤B:根据接口文档WSDL中的控制变量将初始的扩展状态机模型EFSM的状态进行合并及删除处理,并根据合并及删除的处理过程生成状态迁移路径;步骤C:根据路径可行性度量方法来识别所述状态迁移路径中不可行路径,将不可行路径删除后得到改善后的扩展状态机模型EFSM;步骤D:根据正则表达式将改善后的扩展状态机模型EFSM的可行路径进行遍历,生成Web服务的抽象测试用例集。
【技术特征摘要】
1.一种基于扩展状态机模型的Web服务测试用例生成方法,其特征在于,包括如下步骤:步骤A:从Web服务接口获取Web服务描述语言的接口文档WSDL,并根据接口文档WSDL构建初始的扩展状态机模型EFSM;步骤B:根据接口文档WSDL中的控制变量将初始的扩展状态机模型EFSM的状态进行合并及删除处理,并根据合并及删除的处理过程生成状态迁移路径;步骤C:根据路径可行性度量方法来识别所述状态迁移路径中不可行路径,将不可行路径删除后得到改善后的扩展状态机模型EFSM;步骤D:根据正则表达式将改善后的扩展状态机模型EFSM的可行路径进行遍历,生成Web服务的抽象测试用例集。2.根据权利要求1所述的扩展状态机模型的Web服务测试用例生成方法,其特征在于,所述步骤A包括:步骤A1:从Web服务接口获取Web服务描述语言的接口文档WSDL;步骤A2:从接口文档WSDL中提取操作信息、前置条件信息和后置条件信息,并将前置条件信息和后置条件信息中的变量划分为控制变量和数据变量;步骤A3:根据操作信息、控制变量和数据变量构建初始的扩展状态机模型EFSM。3.根据权利要求1所述的基于扩展状态机模型的Web服务测试用例生成方法,其特征在于,所述步骤B包括:步骤B1:根据接口文档WSDL中的控制变量将初始的扩展状态机模型EFSM的状态进行合并,如果初始的扩展状态机模型EFSM的状态属于同一控制变量控制下的状态,则执行状态合并操作,否则不合并;步骤B2:根据接口文档WSDL中的控制变量将初始的扩展状态机模型EFSM的状态进行删除,如果初始的扩展状态机模型EFSM的状态属于小于0的控制变量控制下的状态或者属于前后谓词的控制变量控制下的状态,则删除该状态,否则不删除;步骤B3:根据合并和删除的处理过程生成状态迁移路径。4.根据权利要求1所述的基于扩展状态机模型的Web服务测试用例生成方法,其特征在于,所述步骤C包括:步骤C1:根据路径可行性度量方法将生成的状态迁移路径进行可行性路径分析,将可行状态迁移路径TP用长度为n的连续迁移序列t:t1,t2,...,tn来表示;步骤C2:根据生成状态迁移路径时形成的守卫判别式guard对连续迁移序列t中进行分析,所述守卫判别式guard表示为egope’,其中e和e’为迁移路径中的控制变量表达式,gop为关系运算符,输入的控制变量表达式满足使其能够按顺序遍历可行状态迁移路径TP中的每个迁移ti时,其中1≤i≤n,n为路径的长度,得到满足守卫判别式guard的状态迁移路径;步骤C3:根据生成状态迁移路径时形成的行为判别式action对连续迁移序列t中进行分析,所述行为判别式action表示为v:=e,其中v为数据变量,e为迁移路径中的控制变量表达式,输入的控制变量表达式满足使其能够按顺序遍历可行状态迁移路径TP中的每个迁移ti时,其中1≤i≤n,n为路径的长度,得到满足行为判别式action的状态迁移路径;步骤C4:将不满足守卫判别式guard的不可行状态迁移路径或行为判别式action的不可行状态迁移路径删除,得到改善后的扩展状态机模型EFSM。5.根据权利要求1-4任一项所述的基于扩展状态机模型的Web服务测试用例生成方法,其特征在于,所述步骤D包括:步骤D1:根据FSM有限状态机正则表达式用操作符对改善后的扩展状态机模型EFSM进行表示,得到用于表示改善后的扩展状态机模型EFSM的正则表达式序列;步骤D2:根据状态覆盖标准对所述正则表达式序列进行遍历,生成Web服务的抽象测试用例集TS1,所述抽象测试用例集TS1使改善后的扩展状态机模型EFSM中的每一个状态至少被访问一次;步骤D3:根据迁移覆盖标准对正则表达式序列进行遍历,生成Web服务的抽象测试用例集TS2,所述抽象测试用例集TS2使改善后的扩展状态机模型EFSM中的每一条可行状态迁移路径至少被访问一次。6.一种基于扩展状态机模型的Web服务测试用例生成系统,其特征在于,包括:模型构建模块,用于从Web...
【专利技术属性】
技术研发人员:常亮,张申,古天龙,徐周波,张舜尧,祝曼丽,
申请(专利权)人:桂林电子科技大学,
类型:发明
国别省市:广西,45
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。