使用SOAPUI使testSteps彼此交互

时间:2013-03-20 16:15:03

标签: rest groovy soapui testcase

我是使用SOAPUI的新手,我找不到如何在我的服务器上正确测试REST URI。

我想在给定的URI上测试POST,PUT和DELETE。

POST 方法应在我的数据库中创建一个新条目,服务器返回生成的密钥以访问此元素。

PUT 方法用于更新条目,并且需要包含要更新的条目的键的JSON。

DELETE 方法将删除条目的键。

所以,我想为每个带有3个testSteps

的URI创建一个testCase
  • 第一步:将JSON发布到该URI,创建新条目并检索其密钥
  • 第二步:更新上一个条目(我不知道如何生成包含密钥的JSON)
  • 第三步:删除该条目(同样的问题)

密钥由服务器生成,因此我必须检索它并将其传递给其他步骤。

所以我的问题分为两部分:

  • 如何检索服务器的响应?
  • 如何生成其他两个步骤发送的JSON?

如果您需要更多信息来回答我的问题,请随时询问:)

我希望有人可以给我一些线索,以便这样做。

2 个答案:

答案 0 :(得分:0)

为了检索服务器的响应,我发现了怎么做。

def response = context.expand( '${Request 1#Response}' )

这给出了服务器响应的String表示。

现在我必须提取响应的一些部分并创建一个JSON,它将被发送到下一步(PUT请求)。我还是得知道如何。

任何帮助?

答案 1 :(得分:0)

好吧,我不确定这是否能回答你的问题,但这就是我从响应字符串中获取JSON所做的工作

import groovy.json.JsonSlurper

def slurper = new JsonSlurper() 

def prevStepResponse = '${Create Customer - All fields#Response}'
def prevRespString = context.expand(prevStepResponse) 
def prev = slurper.parseText(prevRespString)

assert prev.customerId > 0