摘要:由于webService的平台无关性,使用越来越多,所以对webService的测试也越来越受关注,本文整理了webService的功能测试方法,包括编码方式和工具方式。
关键词:webService测试;功能测试
1、WebService简述
WebService是一种革命性的分布式计算技术,本质上就是服务提供方发布一些服务(实现一定功能的函数接口)到网络上,服务使用方如果使用到该服务的功能,直接在网络上调用服务接口就可以了,无需自己重新开发。
那么,服务使用方(我们称之为客户端)是如何使用服务发布方发布(我们称之为服务端)的webService服务的呢?这里简要介绍:WebService发布后,其服务是封装在一个wsdl(Web Services Description Language,Web服务描述语言)文件中,客户端发请求主要是向发布好的wsdl地址以SOAP方式发请求,调用过程如下:
● 服务端生成服务描述文件,以供客户端获取。
● 客户端取得服务端的服务描述文件,解析该文件从而获得服务端的服务信息以及调用方式。
● 客户端指定调用方法和参数,生成恰当的SOAP请求消息,发往服务端,并等待服务端返回的SOAP回应消息。
● 服务端接收客户端发来的SOAP请求消息,解析其中的方法调用和参数格式。并根据wsdl的描述,完成指定功能,将返回值放入SOAP回应消息返回给用户。
● 客户端解析得到的返回值。
使用WebService的优点是一次开发多次使用,且由于WebService的平台无关性特性,使用越来越多,所以对webService的测试也就显得越来越重要。
2、WebService功能测试方法
WebService测试最基本的是功能测试,即验证功能的正确性。另外由于服务发布后会由多个客户端进行调用使用,所以性能测试也是一个重要测试内容。
本文只涉及了功能测试部分。功能测试分为编码方式(通过编码测试接口的正确性)和工具方式(通过测试工具测试接口的正确性)。
对于编码方式:WebService常用的框架有axis、xfire、cxf等,对应的有相应的测试方法。
对于工具方式,商用的就不考虑了,免费的工具中有TestMaker(较复杂,需要学习java和Python,学习曲线长)、WebInject(需要懂得soap原理,开发人员用得多)、WSCaller(工具过于简单,只能进行简单的功能测试)、soapUI开源版本(该工具由Java语言开发,有Eclipse插件。脚本语言Groovy是类Java的轻量级脚本语言。组织目录由TestSuit和TestCase构成)。其中的soapUI使用较多,尤其是对懂得Java的人来说上手较快。本文只对soapUI工具测试WebService的方式进行介绍。
……………………
查看全文请点击下载:http://www.51testing.com/html/13/n-806213.html
4、工具soapUI方式
下面以测试服务HelloWorldService为例,详细说明使用工具soapUI进行WebService功能测试的操作步骤。
4.1 将WebService导入工程
A、单击‘File’->‘ New soapUI Project’,如下图:
B、在弹出的对话框中输入待测试的ws信息,然后点击 [OK] 到下一步
Project Name:HelloWorldService
Initial WSDL/WADL:
http://192.168.197.69:8089/HelloWorldServiceComponent/HelloWorldService?wsdl
Create Requests:选中
Create TestSuite:选中
Relative Paths:选中