基于文档解析和约束求解的组合Web服务测试用例生成
发布时间:2017-10-09 22:05
本文关键词:基于文档解析和约束求解的组合Web服务测试用例生成
更多相关文章: 组合Web服务 测试用例生成 文档解析 约束求解
【摘要】:网络与分布式技术的快速发展使得面向服务的体系结构(SOA)得到了学术界以及工业界的广泛应用。作为实现SOA的主要技术,Web服务已成为当前研究的热点问题。为了充分利用Web服务并解决单个Web服务功能有限的问题,业界将多个原子Web服务按照一定的规则和业务逻辑进行组合。为保证组合Web眼务的质量,需要对组合Web服务进行全面、充分的测试。目前常见的组合Web服务测试方法主要为黑盒测试,包括利用WSDL中的接口信息、结合本体知识库或者基于用户输入等方式对组合Web服务进行测试。但这些方法生成测试用例冗余较高(存在大量无效用例),而且Web服务领域内本体库获取比较困难,测试覆盖率也不理想。测试用例设计生成是软件测试领域的主要研究问题。在现有工作的基础上,我们提出了一种基于文档解析和约束求解的组合Web服务测试用例生成方法,即首先通过解析组合Web服务中的相关XML文档,得到各种约束条件来丰富测试信息,然后利用约束求解器对各约束条件进行求解,并结合不同的覆盖率准则生成测试用例。论文的主要工作包括:首先,针对组合Web服务对外只提供XML接口文档的特点,我们提出一种KML文档解析的方法,根据不同接口文档之间的关系,对BPEL文档、WSDL文档以及XSD文档中不同的节点进行解析,从而过滤掉不相关的信息,并生成包含了组合Web服务的业务执行流程、流程中的属性值、变量的详细定义以及条件语句等内容的中间文件。其次,由于黑盒测试方法无法获取有效的输入变量取值范围,导致生成的测式用例集冗余度较高,我们提出了使用约束求解生成测试用例的方法,即将接口文档中提取的约束条件归类为变量类型约束、输入输出约束、条件约束以及活动欠序约束,并提出了相应的约束编码规则,指导与约束求解器相关的约束文件的生成,然后利用约束求解器并结合SOAP协议,生成有效的测试用例。再次,针对组合Web服务中测试覆盖率较低的问题,我们提出根据中间文件生成组合Web服务控制流图,并基于不同覆盖率标准对与约束求解器相关的约束文件进行修改,包括节点覆盖、路径覆盖和MC\DC覆盖,并对约束文档进行修改,生成满足覆盖率准则的测试用例集。最后,完成了组合Web服务测试用例生成工具GTCWS的开发,并针对不同的Web服务(有Oracle BPEL PM Sample以及WS-BPEL Composition Repository提供的7个BPEL代码规模在57行到190行的Web服务)进行了充分的实验,并与现有工作在约束条件规模、生成测试用例覆盖率以及求解时间等方面进行了对比,实验结果表明:GTCWS工具能够生成覆盖率高、冗余度低并且有效的测试用例,且生成测试用例所用时间在可接受范围内。
【关键词】:组合Web服务 测试用例生成 文档解析 约束求解
【学位授予单位】:南京大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TP393.09
【目录】:
- 摘要5-7
- ABSTRACT7-11
- 第一章 引言11-16
- 1.1 研究背景11-12
- 1.2 研究现状12-14
- 1.2.1 基于接口文档中参数类型的方法12-13
- 1.2.2 基于本体的方法13
- 1.2.3 基于用户输入的方法13-14
- 1.3 研究内容14-15
- 1.4 论文结构15-16
- 第二章 相关工作16-23
- 2.1 WEB服务概述16-18
- 2.1.1 SOA与Web服务16-17
- 2.1.2 组合Web服务17-18
- 2.2 WEB服务测试18-20
- 2.2.1 软件测试18-19
- 2.2.2 Web服务测试19-20
- 2.3 SMT求解20-22
- 2.3.1 限界模型检验20-21
- 2.3.2 符号执行21
- 2.3.3 SMT求解器21-22
- 2.4 本章小结22-23
- 第三章 文档解析和约束求解23-34
- 3.1 XML文档解析23-28
- 3.1.1 Web服务中的XML文档23-25
- 3.1.2 XML解析算法25-28
- 3.2 约束编码28-32
- 3.2.1 规范化算法28-30
- 3.2.2 约束编码规则30-32
- 3.3 约束求解和测试用例生成32-33
- 3.3.1 Z3-str求解器32-33
- 3.3.2 测试用例封装33
- 3.4 本章小结33-34
- 第四章 覆盖率驱动的测试用例生成34-41
- 4.1 覆盖率标准34-35
- 4.2 组合WEB服务控制流图35-38
- 4.2.1 基本定义35-36
- 4.2.2 组合Web服务控制流图生成算法36-38
- 4.3 约束文档修正38-40
- 4.3.1 基于覆盖率标准的约束文档修正38-39
- 4.3.2 约束求解和测试用例生成39-40
- 4.4 本章小结40-41
- 第五章 工具实现及实验结果分析41-51
- 5.1 GTCWS工具概述41-42
- 5.2 案例分析42-46
- 5.2.1 文档解析42-44
- 5.2.2 约束求解44-45
- 5.2.3 覆盖率驱动用例生成45-46
- 5.3 评价指标46-47
- 5.4 实验数据和环境47
- 5.5 实验结果分析、比较47-50
- 5.5.1 实验结果47-49
- 5.5.2 与相关工作比较49-50
- 5.6 本章小结50-51
- 第六章 总结与展望51-53
- 6.1 本文总结51-52
- 6.2 未来展望52-53
- 参考文献53-56
- 攻读硕士学位期间主要科研成果56-57
- 致谢57-58
【参考文献】
中国期刊全文数据库 前1条
1 李景霞,侯紫峰;Web服务组合综述[J];计算机应用研究;2005年12期
,本文编号:1002652
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/1002652.html