在加特林(Gatling)中有没有做过这样的事情的方式:
scenario("Check UUID with regex")
.exec(http("Get UUID")
.get("http://myapp/api/v1/goal/a24e210c-0fc1-44a0-a5ca-9bd5d8d71916")
.check(jsonPath("$.id").is(regex("[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}")))
基本上,我想对检查JSONPath构造中返回的内容应用正则表达式比较。
和平!
P.S。我知道我可以做:
.check(regex("\"id\": \"[0-9a-fA-F]{8}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{4}\\-[0-9a-fA-F]{12}\"").exists)
答案 0 :(得分:0)
与您所描述的完全不同,但是您可以使用转换来伪造它
.check(jsonPath("$.id")
.find
.transform(id => "[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}".r
.findFirstMatchIn(id) match {
case Some(value) => true
case None => false
}
).is(true)
但是如果直接的正则表达式检查有效...我会同意的