断言响应始于

时间:2016-11-18 20:40:49

标签: groovy soapui

我试图断言响应,检查响应值是否以某个文本开头。我尝试使用函数startsWith但似乎它在SOPAUI脚本断言中不起作用。

这就是我的尝试:

import groovy.json.JsonSlurper

//grab the response
def ResponseMessage = messageExchange.response.responseContent.records
//define a JsonSlurper
def jsonSlurper = new JsonSlurper().parseText(ResponseMessage)
//log.info jsonSlurper

assert jsonSlurper.startsWith("Text")

这是json回复

{
  "Name": "Natalie",
  "message": "What are you doing"
}

我想检查Name是否以" Nat"

开头

1 个答案:

答案 0 :(得分:0)

从文档JsonSlurper().parseText(String text)返回:

  

listsmaps

的数据结构

因此您无法直接使用startsWith。要实现您想要的功能,您必须转到路径中的所需对象并在那里使用startsWith。类似的东西必须适合你的情况:

import groovy.json.JsonSlurper    

def jsonStr = '{ "Name": "Natalie", "message": "What are you doing" }'

def jsonSlurper = new JsonSlurper().parseText(jsonStr)
assert jsonSlurper.Name.startsWith("Nat")