2016-06-10 60 views
2

使用SoapUi我打算调用MockService,并且当响应被配置为返回静态消息时,一切似乎都没有问题。另一方面,如果我添加并发送一个参数(例如??PName = John),虽然我也将响应中的名称从“John”更改为$ {PName},但我什么都没有(空字符串)。我在哪里做错了?请参阅随附的屏幕截图如何在SoapUi中动态配置REST模拟?

谢谢enter image description here

回答

2

这里是我会得到请求参数:

例如,用户通过查询参数说test与价值abc

模拟脚本:使用上下文

//Read request parameter test and assign value to a variable 
def userValue = mockRequest.httpRequest.getParameter('test') 
//Assign the input value to response context 
context.requestValue = userValue 

样本响应:

{ 
    "comment" : "${requestValue}" 
} 

在所有数据流:

enter image description here

+0

@ user1980253,很高兴知道。你介意接受它作为答案吗? – Rao

-1

的参数化特性的使用概念。 模拟服务使用属性值。 由于你的属性PName在soapUI的任何级别的自定义属性中都不存在,所以你得到NULL响应。

定义属性PnameValue项目级别为

enter image description here

现在修改您的测试请求的值作为enter image description here

添加模拟服务与响应

enter image description here

启动模拟服务和触发操作。您也可以使用d不同的响应基于SoapUI的任何级别的特性值。

如果解决了您的问题,请接受答案。

+0

这并不解决问题。因为只使用项目属性,并且不可能对所有请求调用具有相同的值,并且完全不能解决发送值作为查询参数的目的。 – Rao

+1

谢谢你的回答,但它不回答我的问题。我需要将参数作为“古典”REST参数传递。 – Dyptorden