【转】Web Service单元测试工具实例介绍之SoapUI
转自:http://blog.csdn.net/oracle_microsoft/article/details/5689585
SoapUI 是当前比较简单实用的开源Web Service 测试工具,提供桌面应用程序和IDE 插 件程序两种使用方式。能够快速构建项目和组织测试用例是该工具的一大特性,下面将通过实例介绍如果使用SoapUI 进 行Web Service 单元测试。
l 构建项目
SoapUI 工具中的项目(Project )是由一个或多个Web Service 组成的,这里我们以“中国电视节目预告 Web 服务:
http://www.webxml.com.cn/webservices/ChinaTVprogramWebService.asmx?wsdl ”为例,新建WSDL 项目。点击File è New WSDL Project , 输入项目名称“ChinaTV ”,初始WSDL “
http://www.webxml.com.cn/webservices/ChinaTVprogramWebService.asmx?wsdl ” ,如图1 :
其中WSDL 可 以是URL 也可以是wsdl 的静态文件。
l 单个服务请求的运行
SoapUI 工具会解析WSDL 文件获取服务接口,创建请求。如图2 、3 :该服务提供8 个接口,并根据Soap 的版本不同提供两种。
展开接口“getTVstationDataSet ”的Soap 请 求“Request 1 ”:
双击查看请求的SOAP 消 息:如图4
我们看到的是服务请求Soap 消 息,其中的“? ”问号代表的是入参,将其修改为请求入参值“-1” (本实例中,-1 代表中央电视),然后点击图标 按 钮运行,获得请求结果:如图5
我们看到返回的Soap 消 息及其中的数据。
l 构建测试用例
选择项目“ChinaTV ” 并右键,选择New TestSuite ,构建一个测试套件如图6
然后,在TestSuite 中 右键,选择New TestCase ,新建TestCase 并将服务请求加入到TestCase中: 如图7
这样,我们拥有了第一个测试用例:如图8
因为上述过程中已经设置了服务请求入参,所以这里我们双击TestCase 1 点击 可 以直接运行:如图9
我们看到了“绿条” , 这表示运行通过。
l 增加检查点
如图,打开服务请求getTVstationDataSet – Request 1 ,点击 , 添加检查点:如图10
检查点有多种类型,这里我们选择包含“Contains ”并输入检查内容“中央电视台”:如图11
我们运行服务请求getTVstationDataSet – Request 1 :如图12
可以看到检查点是有效的:Contains-VALID 。
l 组织测试步骤
将getAreaDataSet (获 得支持的省市(地区)和分类电视列表)、getTVstationDataSet(通 过省市ID 或分类电视ID 获得电视台列 表)、 getTVchannelDataSet (通过电视台ID 获得该电视台频道列表)、getTVprogramDataSet (通 过频道ID 获得该频道节目列表)依次加入到TestCase 1 的测试步骤中去,然后组织测试步骤获取“CCTV-1 ”的节目列表。
测试步骤:
1、 获得“中央电视”的分类ID “-1 ”
2、 获取“中央电视”类别中 的“中央电视台”ID :“39 ”
3、 获取“中央电视台”的频 道“CCTV-1 ”ID :“606 ”
4、 获取“CCTV-1 ”频道的节目列表 如图13
我们需要将服务请求getAreaDataSet 结果中的“中央电视”ID “-1 ”作为服务请求getTVstationDataSet 入 参,右键点击getAreaDataSet-Request 1 , 选择Insert Step èProperty Transfer ,如图14 :
这个Property Transfer 用于两个服务请求间的交互,我们将其命名为:“AreaTransferStation ” 如图15
Source 中我们选择getAreaDataSet-Request 1 的Response ,Target 中我们选择getTVstationDataSet-Request 1 的Request ,并通过脚本选择服务请求getAreaDataSet 返 回结果Soap 消息中节点(AreaList[4] ) 中(areaID[1] )的值传递给服务请求getTVstationDataSet作为入参(theAreaID[1] ) 的值。
其中:declare namespace diffgr=
"urn:schemas-microsoft-com:xml-diffgram-v1"; 用于声明命名空间,与SOAP 消息中的命名空间对应。如图16
同样的操作步骤,我们组织好其他几个服务请求间的交互,就组织 完成了一个完整的测试步骤,最后我们运行TestCase ,看到全部的运行结果:(绿色表示运行通 过)如图17
注:soapui 官 方网站http://www.soapui.org/
【转】Web Service单元测试工具实例介绍之SoapUI的更多相关文章
- Web Service单元测试工具实例介绍之SoapUI
原文 Web Service单元测试工具实例介绍之SoapUI SoapUI是当前比较简单实用的开源Web Service测试工具,提供桌面应用程序和IDE插件程序两种使用方式.能够快速构建项目和组 ...
- Web Service测试工具小汇
1..NET WebService Studio 这款工具出自微软内部,最大的优点是可视化很好,不用去看那些XML文件,WebService的基础内容就有XML,但是测试中Case过多,每次测试结果都 ...
- Web Service 性能测试工具比较
背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力(请求数/秒).以微信服务器为例,每个用户用独立的登录token,做各种操作, ...
- 性能测试工具 Web Service 性能测试工具比较
[转自]https://testerhome.com/topics/3003 背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力 ...
- 在SharePoint中无代码开发InfoPath应用: 一个测试Web Service的工具
这是这个系列的第一篇,介绍一个小工具,主要是用在Web Service测试的. 因为为了用一点高级的东西,就免不了和web service打交道. 你可以使用按照KB819267来修改web.conf ...
- JAVA开发Web Service几种框架介绍
郑重声明:此文为转载来的,出处已不知了,侵告删. 在讲Web Service开发服务时,需要介绍一个目前开发Web Service的几个框架,分别为Axis,axis2,Xfire,CXF以及JWS( ...
- web service接口测试工具选型
1 简介 1.1 范围 1.2 目的 本文档用于指导测试部进行接口测试. 2013-03-11磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.com ...
- 通过ksoap2-android来调用Web Service操作的实例
import java.io.IOException; import org.ksoap2.SoapEnvelope;import org.ksoap2.serialization.SoapObjec ...
- 使用cxf写web service的简单实例
增加CXF依赖 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>apache-cx ...
随机推荐
- Java 找不到主类错误
Eclipse 运行java 程序,突然出现错误:没有或找不到主类. 在网上找了好多办法,都不行. jdk环境配置啊-->这个一般不会出错,因为以前都不会出现这种问题. 查看项目配置啥的--&g ...
- BroadCast Receiver的使用
定义 广播接收器分为标准广播和有序广播,标准广播是异步执行的广播,有序广播是同步执行的,同一时刻只有一个广播接收器会收到广播,执行结束后,广播才会继续传递. 静态注册 在Androidmanifest ...
- VS2012+LUA环境搭建
1 .启动VS2012,选择C++下的"win32"项目类型中的"Win2控制台应用程序" 2.工具——选项——项目和解决方案——VC++目录——可执行程序(C ...
- Redis 3.0.0 集群部署
简述: 1.0.1:redis cluster的现状 目前redis支持的cluster特性 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot reshardi ...
- BOOL和bool的区别
一. 1.类型不同 BOOL为int型 bool为布尔型 2.长度不同 bool只有一个字节 BOOL长度视实际环境来定,一般可认为是4个字节 3.取值不同 bool取值false和true,是0和1 ...
- Apache php Mysql部署(一)下载安装
前言 最近公司需要开发一个网站,但是又有特殊要求:不能使用java.只能在Windows平台部署.没方法,只能选择了Apache+php+Mysql的方案. 不知道有没有更好的,听所golang挺不错 ...
- 【转】tomcat性能调优
一.总结前一天的学习 从"第三天"的性能测试一节中,我们得知了决定性能测试的几个重要指标,它们是: ü 吞吐量 ü Responsetime ü Cpuload ü ...
- ASP.NET后台调用前台JS函数的三种常见方法
第一种:使用普通的添加控件中的Attributes属性进行调用 例如,像一般的普通的按钮:Button1.Attributes.Add("onclick","MyFun( ...
- 【kate整理】matlab求商,求余数
a/b=q...r a=b*q+r r为余数 fix(a/b) 求商rem(a,b) 求余数还可以 mod(a,b) 两者的区别是余数的符号,rem与a相同,而mod与b相同 例1: & ...
- 近期编程问题——read:resource temporarily unavailable
EAGAIN错误 出现问题:read:resource temporarily unavailable 原因:这种错误一般出现宰非阻塞的socket编程中,资源暂时不可用. 我的解决方法:囧,后来改成 ...