SoapUI逃避<和>到<和>,如何克服这个?

时间:2017-10-09 18:29:17

标签: groovy soapui

我们有一个场景,请求可以发送json正文,json正文包含接受字母数字值的字段 对于Ex:

{"paramName": "paramValue"}

其中param值可以是字母数字,因此实际请求可能会变成类似下面的内容

{"certificationId": "CERT1234<>"}

soapUI在身体中分别将< and >个字符更新为&lt; and &gt;个字符。 有没有办法解决这个问题,因为QA与响应中的相同字符进行比较?

1 个答案:

答案 0 :(得分:0)

您需要通过替换这些值来转换响应。

使用groovy脚本,如下所示:

请注意,使用固定的响应来演示。您可以使用Script Assertion代替Groovy Script测试步骤,使其适用于动态响应。

def response = """{
  "certificationId": "CERT1234&lt;&gt;"
}"""


//map the unescape characters
def map = ['&lt;' : '<', '&gt;' : '>', '&quot;' : '"', '&apos;':'\'', '&amp;':'&']
//Replace them in source string
map.collect {k,v -> response = response.replaceAll(k,v)}

log.info "Response after replacing: $response"

您可以在线快速尝试 demo