jsonPath("/id") matches in { “id” : “123” }, but jsonPath("/@id") doesn’t appear to match in { “@id” : “123” }. Suggestions?
JsonPath uses the XPath notation, where @ describes an attribute.
I honestly don’t know how to handle element names starting with @ with XPath.
Please share if you find out.
Otherwise, you can use regex instead.
In XPath, you can escape the @ character by writing @.
Cheers,
Hmm actually, I’m wrong, sorry, there are mentions of ’ but \ is not true at all, my bad ^^
Yep, I tested that before replying
Thinking it through (I knew I should have waited before posting), in XML, tags cannot contain the @ character. This is why there’s no escaping for this character, as there is no need to escape it.
Completely out of curiosity, why did you name this field @id instead of id ?
As to why, see http://json-ld.org.…
You made a point.
We’ll see if we can find a way to make it work.
I opened an issue, but I’m afraid fixing it might require breaking existing JsonPath, so if we find a solution, it might be for Gatling v2.
https://github.com/excilys/gatling/issues/965
Cheers,
Stéphane
Fixed, but only is Gatling 2 (meaning that you’d have to grab a snapshot from CI, see wiki) as I dropped attribute notation support.
See https://github.com/excilys/gatling/issues/965