使用SoapUI

时间:2017-03-06 14:15:09

标签: json rest groovy soapui

我是SoapUI工具的新手。我正在使用SoapUI版本5.3.0我的应用程序有几个RESTful API。我必须以json请求的形式向WebService发送请求,如下所示:

{
"app_key":"i8gAVDwcAq40n2kAv6Ox+w==",
"targetDB":"100",
"createNew": "true"
}

截至目前,我可以在每个步骤中发送单个请求,并获得满意的响应,如下所示:

<StartDataExtractResult xmlns="http://schemas.datacontract.org/2004/07/AriaTechCore" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<StatusCode>1</StatusCode>
<StatusText>success</StatusText>
<RequestNumber>100</RequestNumber>
</StartDataExtractResult>

我的问题是如何在循环中向Web服务器发送多个请求(50,100,500)请求,以1秒的间隔更改属性“targetDB”(例如100,101,102 ...)? / p>

使用Soap UI 5.3.0。

任何帮助/指针都会非常有用。

这就是我的项目的样子: My Project Structure

1 个答案:

答案 0 :(得分:1)

以下是您需要做的事情:

Create a test case执行以下步骤:

  • Groovy脚本测试步骤 - 将生成一个带有所需逻辑的数字,以生成targetDB的数字
  • 请求测试步骤 - 您目前拥有的。但是这里需要使用生成的数字。

Groovy脚本

def targetdb = ((context.expand('${#TestCase#TARGET_DB}') ?: 0) as Integer) + 1
log.info "Target db for current request : ${targetdb}"
context.testCase.setPropertyValue('TARGET_DB', targetdb.toString())

请求:使用属性扩展更改请求以使用生成的target db

{
   "app_key":"i8gAVDwcAq40n2kAv6Ox+w==",
   "targetDB":"${#TestCase#TARGET_DB}",
   "createNew": "true"
}

右键单击测试用例,选择New Load Test

负载测试有不同的策略。当然,它允许您设置测试需要执行的次数。

您可以找到更多详情here