[发明专利]一种基于单子技术的Web服务测试数据自动生成方法有效
申请号: | 201210147994.0 | 申请日: | 2012-05-14 |
公开(公告)号: | CN102710460A | 公开(公告)日: | 2012-10-03 |
发明(设计)人: | 张迎周;顾帅帅;符炜;张卫丰;周国强;邹德国;王参参;陈丽洁 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | H04L12/26 | 分类号: | H04L12/26 |
代理公司: | 南京经纬专利商标代理有限公司 32200 | 代理人: | 叶连生 |
地址: | 210003 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种基于单子技术的Web服务测试数据自动生成方法主要解决Web服务测试所面临的动态灵活性和可组合重用性的挑战。最主要的是测试用例的单子表示、测试用例的自动生成和Web服务测试的运行这三个部分。具体表现为解析WSDL文档,从其Schema中获得相关输入类型信息,再通过函数makeTestCase自动获得某个服务操作的测试用例,最后将其打包成HTTP包发送给服务端,服务端对HTTP包中的SOAP消息进行解析并返回调用服务的结果。经大量实验数据检验证明本专利的技术1.能根据WSDL正确发送SOAP测试消息并获取返回信息,同时能自动生成其中的测试数据;2.测试时间和测试功率方面比以往的技术更具有优势。 | ||
搜索关键词: | 一种 基于 单子 技术 web 服务 测试数据 自动 生成 方法 | ||
【主权项】:
一种基于单子技术的Web服务测试数据自动生成方法,其特征在于该方法能自动生成基于互联网Web服务所需要的某些特定输入类型的测试用例,该方法包含的步骤如下:1)Web服务描述文档WSDL的解析:解析WSDL,简单对象访问协议SOAP消息中两个必要元素和;其中元素的属性值由WSDL中Schema元素的命名空间属性直接获得,其中Schema负责定义和描述文档的结构和内容模式,这里的文档XML是一种元标记语言,用来描述数据的;元素的子结构主要由对应的服务操作名及其相应的类型结构信息组成;2)服务类型信息的获取:解析WSDL文档,从其中的Schema元素中收集服务的类型描述信息,并表示成测试数据TestData类型,再用哈希表XsdTable表示最终的Schema所有类型信息;其中除了包含基本简单类型外,还允许用户自定义简单类型,以便生成符合特殊要求的测试用例数据;3)构造与服务输入类型相应的XML文档:根据上述的Schema信息表以及哈斯卡服务页面单子HSP,给出函数testDataToXml,通过此函数能从一个服务的输入类型生成相应的XML结构文档;4)自动生成相应的测试用例:根据类型信息,输入类型的XML文档和服务操作名以及从Schema中获取的元素的属性值,给出函数makeTestCsae来为某个服务操作自动生成相应的测试用例,并根据WSDL中服务输入类型进行预期返回结果,自动生成XML框架;5)SOAP消息的封装:在Web服务测试用例之上加载相关的超文本传输协议HTTP的包头信息,其中包括服务请求地址SOAPAction头、包头长度、发送地址,之后将其封装成一个HTTP包,然后将之发送给服务端;6)SOAP消息的解析:服务端对HTTP包中的SOAP消息进行解析并返回调用服务器的反馈信息,包括访问是否成功和解析Socket包,其中Socket包中包含服务请求地址信息和发送地址信息,并获取反馈消息的相关内容;7)生成服务自动测试描述函数:根据服务调用函数soapCall,加入能把所生成的测试用例以文件的形式保存的appendFile函数和能输出服务调用后反馈的相关结构的putstrLn函数,最终得到服务自动测试描述函数;8)Web服务自动测试的运行:将服务自动测试描述函数直接作为能随机产生相应类型值的Gen单子中接口函数QuickCheck的输入,从而可进行Web服务自动测试;9)特殊服务类型数据的生成:接口函数QuickCheck根据参数中所含的生成器,随机生成若干数据进行测试;此外,如果QuickCheck函数输入参数是个函数f,则QuickCheck函数先利用Gen单子给出f参数类型的生成器,再进行批量测试;客户也可以根据需要重新设计这些数据生成器,并辅助使用Gen单子中所提供的生成器函数;10)测试用例类型约束:根据上述Gen单子所提供的类型生成器,通过相应的调整,来使测试数据生成器满足WSDL描述中字符串数据类型,如长度、最大长度、最小长度,以及数值型数据类型相关约束,即最大范围、最小范围;11)测试属性函数的组合描述:QuickCheck函数最后还提供了一些能将测试属性函数组合起来的描述方法,即条件约束函数、测试数据分类与统计函数,这些函数能辅助更好地进行Web服务测试用例的生成与分析。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210147994.0/,转载请声明来源钻瓜专利网。
- 上一篇:LED显示模组连接装置
- 下一篇:一种答题装置及其考试数据处理方法