Validation Gatling-自定义验证
我是加特林和斯卡拉的新手 如果JSON响应与JSON模式不匹配,我希望请求失败。 这是我的模式验证器函数Validation Gatling-自定义验证,validation,gatling,Validation,Gatling,我是加特林和斯卡拉的新手 如果JSON响应与JSON模式不匹配,我希望请求失败。 这是我的模式验证器函数 def validateJsonAgainstSchema(jsonResponseExpr:Expression[String], schemaFile:String)(session: Session): Validation[Session] = { val jsonResponse=jsonResponseExpr(session) val jso
def validateJsonAgainstSchema(jsonResponseExpr:Expression[String], schemaFile:String)(session: Session): Validation[Session] = {
val jsonResponse=jsonResponseExpr(session)
val jsonSchema = testUtilsObj.readFile(schemaFile)
val schema: JsonNode = asJsonNode(parse(jsonSchema))
val instance: JsonNode = asJsonNode(parse(jsonResponse.get))
val validator = JsonSchemaFactory.byDefault().getValidator
val processingReport = validator.validate(schema, instance)
if (processingReport.isSuccess) {
Success(session)
} else {
println("****validation Failed*******")
println(processingReport.map(_.asJson()).mkString("\n"))
Failure(processingReport.map(_.asJson()).mkString("\n"))
}
}
我在exec块中调用这个函数,如下所示,即使函数返回失败,gatling测试也会通过
.exec(
valObj.validateJsonAgainstSchema("${jsonResponse}","Schemas/searchQueryResponse.json") _
)
如何在请求检查块中调用validateJsonAgainstSchema
?有人能给我一个实现自定义验证的例子吗