soapui中文操作手册(四)----MOCK服务
2015-09-07 10:28
639 查看
转载地址:http://www.cnblogs.com/zerotest/p/4670005.html
Web Service Mocking是武器库一个非常有用的工具。这是解决“如果没有Web服务如何创建针对性的Web服务测试”问题的办法。Web Service Mocking将在这里派上用场。它允许你实际的Web服务产生之前,创建近似或模拟的Web
Service。在本教程中,我们将:
创建项目
创建MockService
编辑MockService
调用MockService
自定义MockResponse
使用下面的WSDL开始新的SOAP项目
http://www.webservicex.net/CurrencyConvertor.asmx?WSDL 该currencyConverter 服务正在非常努力地工作。如果你看到加载定义窗口无限运行,Web服务可能已关闭。要验证Web服务工作,网址复制到您喜爱的浏览器的地址栏和测试Web服务。如果你的浏览器不响应,Web服务已关闭。
该CurrencyConvertor项目节点应在浏览器中可见。
我们现在准备创建MockService
在SOAP接口之一单击鼠标右键并选择Generate MockService。
在该对话框中Generate Mock Service,您可以指定本地端口/路径正在创建的服务,但就目前只需单击OK。
请在名称对话框您MockService的名称,然后单击确定。
创建MockService后,你应该得到一个带有操作和请求的MockService。 正如你所看到的,图标是灰色的。这是一个指示该MockService尚未运行。我们已经成功地创建了第一个MockService。让我们来编辑它!
现在,双击MockService看到MockService编辑器。在编辑器中,我们可以看到对于该服务的所有操作的列表,以及它记录已经由所述MockService处理所有传入的请求和响应日志。
双击 Conversion Rate,看看我们在MockService的MockResponses:
正如你可以看到我们只能有一个。让我们来编辑它。双击它打开响应编辑器。 该编辑器MockResponse和SoapUI请求编辑器是非常相似的,但不是请求,我们将编辑是响应。该Incoming
Request 视图还是非常有用的; 它显示最后接收到的请求的操作,这对于调试客户端的呼叫,包括附件和HTTP头是有用的。
编辑ConversionRateResult别的东西比默认值为空“?” 。
恭喜你,你刚刚创建你的第一次现场般MockService!让我们来看看它是否工作。
首先,我们必须启动MockService。点击
在MockService编辑器。这将启动配置的端口和路径上的服务。 为了右上角,你应该看到它的运行编辑器,端口它的响应上。播放按钮是灰色,如果你想停止MockService,只需点击
。
在MockResponse编辑器,单击Create Request。
这将提示您打开其运作项目中的现有请求之一。
当您打开请求,将SoapUI自动的切换节点到本地运行的MockService来代替正在使用WSDL的节点。点击运行按钮。 正如你所看到的MockService返回我们前面的响应输入的值。
如果您切换回MockResponse编辑器并选择其 Incoming Request来看,你应该能够看到被张贴到MockService并通过MockOperation处理的请求。
恭喜!这是你的第一个MockService。诚然,这是很简单的,所以让我们使它更有点复杂。但首先,随意修改所创建的内容MockResponse并重新提交请求,看到你的变化是立即可用,没有必要重启MockService。做了什么?让我们通过定制MockResponse继续前进和完成。
让我们继续通过创建MockResponse更加动态的一点点改变dispatch和Groovy scripting。
首先,我们将创建第二个MockResponse。
给它一个名字
让我们写响应脚本。点击脚本选项卡中的响应,并输入以下Groovy脚本:context.setProperty( "rate", Math.random() ), 它看起来是这样的: 此脚本设置了一个名为属性rate到一个随机数。正如你可能已经注意到,我们没有在任何地方使用属性率,所以让我们添加它。
在ConversionRateResult元素输入以下内容:${rate} 这就是所谓的属性扩展,他是一个SoapUI非常强大的功能。。通过插入属性扩展中的任何元素,你就可以通过编程填补元素。基本上它告诉了SoapUI使用的属性rate的当前值。
现在,我们已经写了一个剧本,结果会被插入到响应,真棒!
Web Service Mocking是武器库一个非常有用的工具。这是解决“如果没有Web服务如何创建针对性的Web服务测试”问题的办法。Web Service Mocking将在这里派上用场。它允许你实际的Web服务产生之前,创建近似或模拟的Web
Service。在本教程中,我们将:
创建项目
创建MockService
编辑MockService
调用MockService
自定义MockResponse
1.创建一个新项目
使用下面的WSDL开始新的SOAP项目http://www.webservicex.net/CurrencyConvertor.asmx?WSDL 该currencyConverter 服务正在非常努力地工作。如果你看到加载定义窗口无限运行,Web服务可能已关闭。要验证Web服务工作,网址复制到您喜爱的浏览器的地址栏和测试Web服务。如果你的浏览器不响应,Web服务已关闭。
该CurrencyConvertor项目节点应在浏览器中可见。
我们现在准备创建MockService
2.创建一个MockService
在SOAP接口之一单击鼠标右键并选择Generate MockService。在该对话框中Generate Mock Service,您可以指定本地端口/路径正在创建的服务,但就目前只需单击OK。
请在名称对话框您MockService的名称,然后单击确定。
创建MockService后,你应该得到一个带有操作和请求的MockService。 正如你所看到的,图标是灰色的。这是一个指示该MockService尚未运行。我们已经成功地创建了第一个MockService。让我们来编辑它!
3.编辑MockService
现在,双击MockService看到MockService编辑器。在编辑器中,我们可以看到对于该服务的所有操作的列表,以及它记录已经由所述MockService处理所有传入的请求和响应日志。双击 Conversion Rate,看看我们在MockService的MockResponses:
正如你可以看到我们只能有一个。让我们来编辑它。双击它打开响应编辑器。 该编辑器MockResponse和SoapUI请求编辑器是非常相似的,但不是请求,我们将编辑是响应。该Incoming
Request 视图还是非常有用的; 它显示最后接收到的请求的操作,这对于调试客户端的呼叫,包括附件和HTTP头是有用的。
编辑ConversionRateResult别的东西比默认值为空“?” 。
恭喜你,你刚刚创建你的第一次现场般MockService!让我们来看看它是否工作。
4.调用MockService
首先,我们必须启动MockService。点击在MockService编辑器。这将启动配置的端口和路径上的服务。 为了右上角,你应该看到它的运行编辑器,端口它的响应上。播放按钮是灰色,如果你想停止MockService,只需点击
。
在MockResponse编辑器,单击Create Request。
这将提示您打开其运作项目中的现有请求之一。
当您打开请求,将SoapUI自动的切换节点到本地运行的MockService来代替正在使用WSDL的节点。点击运行按钮。 正如你所看到的MockService返回我们前面的响应输入的值。
如果您切换回MockResponse编辑器并选择其 Incoming Request来看,你应该能够看到被张贴到MockService并通过MockOperation处理的请求。
恭喜!这是你的第一个MockService。诚然,这是很简单的,所以让我们使它更有点复杂。但首先,随意修改所创建的内容MockResponse并重新提交请求,看到你的变化是立即可用,没有必要重启MockService。做了什么?让我们通过定制MockResponse继续前进和完成。
5.自定义MockResponse
让我们继续通过创建MockResponse更加动态的一点点改变dispatch和Groovy scripting。首先,我们将创建第二个MockResponse。
给它一个名字
让我们写响应脚本。点击脚本选项卡中的响应,并输入以下Groovy脚本:context.setProperty( "rate", Math.random() ), 它看起来是这样的: 此脚本设置了一个名为属性rate到一个随机数。正如你可能已经注意到,我们没有在任何地方使用属性率,所以让我们添加它。
在ConversionRateResult元素输入以下内容:${rate} 这就是所谓的属性扩展,他是一个SoapUI非常强大的功能。。通过插入属性扩展中的任何元素,你就可以通过编程填补元素。基本上它告诉了SoapUI使用的属性rate的当前值。
现在,我们已经写了一个剧本,结果会被插入到响应,真棒!
相关文章推荐
- soapui中文操作手册(三)----使用SoapUI进行负载测试
- web_custom_request
- Volley(二) ImageRequest、Imageloader、NetworkImageView加载图片
- 【UIProgressView进度条控件】
- StringBuffer和StringBuilder
- IOS8下UIView下的TableView从UINavigationController中POP出来后crash
- Tasks Queues and Cron Jobs(任务队列和时钟守护作业)
- SQLChop、SQLWall(Druid)、PHP Syntax Parser Analysis
- soapui中文操作手册(二)----通过您的WSDL请求创建一个测试
- UILabel自适应宽度的函数详解
- Unique Paths II
- php中用require、require_once、include、include_once
- UI:UIScrollView、UIPageControl
- soapui中文操作手册(一)----创建一个新的项目
- Android线程---UI线程和非UI线程之间通信
- 在UITableViewController对应的storyBoard中添加view
- UISearchBar输入框颜色设置,文字颜色设置
- KindEditor编辑器结合EasyUi
- universalimageloader uil doesn't support scheme(protocol
- wxformbuilder