- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
WebService自动化测试平台研究与实现
WebService自动化测试平台研究与实现
摘 要:Web Service以其平台独立、低耦合、自包含、分布式、易集成的特点而得到广泛的应用,但Web Service本身特性使得服务提供者在确定将Web Service集成到系统前,需要对Web Service做大量、全面的测试,确保集成的Web Service能够达到使用者所预期的目的。软件测试作为Web Service开发过程中不可或缺的环节,如何对Web Service进行全面、有效的测试,变得日益重要。本文通过对目前已有自动化测试方法的研究,利用脚本语言python设计并实现了一种Web Service自动化测试平台,利用该平台可以对Web Service进行全面、高效的测试,并迅速找出Web Service测试过程中存在的问题。该平台已经在大型金融机构中得到应用,并取得良好的应用效果。
关键词:Web Service;自动化测试;python WSDL
中图分类号:TP311.53 文献标识码:A
一、引言
随着计算机网络技术的发展,企业内部、企业之间对于网络上应用能够进行相互交互的需求应运而生,这样的需求使得企业应用急需寻求一种体系结构,可以让不同的计算机实体之间使用基于标准的数据描述方法以及标准的调用方法进行交互。Web Service以其松耦合、简单、高度集成、规范、易开发的特点获得行业支持,无论是平台供应商、解决方案供应商、技术供应商还是服务提供商都纷纷在自己的平台、解决方案中加入Web服务。
在这样的形式下,如何保证Web Service的服务质量成为了人们最为关注的问题。如果某个Web Service在实际应用中出现严重问题,无论后果轻重,都不是人们所期望看到的,由此,人们对Web Service进行高效、全面的测试需求变得日期强烈。显然,让测试人员手动测试存在着人工成本高、自动化测试程度低、测试不充分,重复性测试造成效率低等诸多问题。为了提高Web Service的测试效率,降低测试成本,本文实现了一种全新的Web Service自动化测试平台,并在实际中获得了应用。
二、Web Service测试
(一)Web Service测试的特点和困难
虽然Web Service测试也包含功能测试、性能测试、安全性测试等。但与传统软件测试相比,Web Service测试有许多独特的地方,进而导致Web Service测试面临很多困难,目前面临的主要测试困难如下:
1.Web Service包括大量分布式应用,大量用户可能在同一时间访问同一服务,因此性能测试是一个重要的方面,手工测试很难做到。
2.由于知识产权等原因,服务提供者往往不暴露过多的服务实现细节,而是以接口形式发布服务,使用者只能获得Web Service的接口信息描述文档WSDL,该特性使得一切白盒测试技术失效。
3.接口参数往往以XML文件形式传输,而XML文件可能包含大量节点参数,每个节点参数都有各自的格式要求,有时节点参数间也会存在一些相互依存关系。如果这些都靠手工测试,工作量将会非常大,特别是在版本演变情况下,要进行大量的重复性测试工作,效率低下。
4.对Web Service的测试需要构建专门测试客户端,通过客户端或远程调用Web Service来收集服务响应信息,并根据响应信息分析测试结果,从而快速定位测试中发现的故障。
5.Web Service接口版本的演进,如新增加接口等,如何保证新增加接口的质量以及确保新增加接口未对已有接口产生破坏。
(二)传统软件测试与Web Service测试的比较
和传统软件测试相比,Web Service测试需要服务提供者、服务中介和服务请求者协作共同完成测试任务,测试也由传统的、集中的、离线的测试变为分散的、在线的即时测试。
三、平台的设计与实现
(一)设计目标
基于上述提到的在Web Services测试过程中出现的问题,本平台需要达到以下目的:
1.可以通过编写脚本,进行自动化测试,尽量减少手动参与。如:针对某个参数进行测试,该参数会有各种格式要求,可以在脚本中将各种可能出现的参数格式进行列表,并填写对应的返回结果,根据返回结果能快速定位原因。
2.通过对配置文件进行修改,确定本轮自动化测试需要测试哪些功能。包括:对单个接口进行独立测试,甚至对接口的某个参数单独测试,版本演进过程中对新增加接口进行独立测试。
3.详细自动化测试日志,包括:记录测试过程中测试接口名,输入输出参数,预测结果,实际返回结果,比对结果等,如果参数是XML的整个文件内容,则还需生成该文件,便于故障定位。
4.测试版本化,可以根据接口版本号
文档评论(0)