Scenario: Test
* def contentType = 'text/event-stream'
* def response =
"""
<data contentLength="5930" contentType="text/event-stream;charset=UTF-8"><![CDATA[
data:
}
}这是正确的工作和断言,但这是包含的,我需要事先知道值
并且match jsonresponse.data._包含‘0000000000000000abc’,这是正确的,但失败了,但这是包含的,我需要事先知道值。
匹配jsonresponse.data._包含'123456789‘
有什么方法可以从这个json获得groundNumber和其他属性的值吗?
提前感谢
发布于 2020-02-08 00:49:25
您需要将这些内容转换为有效的JSON。参考类型转换:https://github.com/intuit/karate#type-conversion
对于给定的响应,这将将多个行转换为单个JSON数组。
* def data = /data
* print data
* def data = data.replaceAll('data:', '').replaceAll('}', '},')
* json data = '[' + data + ']'
* print data现在您可以进行正常的JsonPath处理。
* def numbers = $data[*].groundNumber
* match numbers == ['00000000000000000000123', '00000000000000000000456', '00000000000000000000789', '00000000000000000000000']https://stackoverflow.com/questions/60121921
复制相似问题