下面的测试检查 graphql 端点的性能。 id 的 CSV 文件被输入到测试中。运行时,大约 1% 的请求失败,因为端点返回一些输入的 id 的错误。但是,从 graphql 返回的消息描述性不强,所以我不知道哪个 id 实际上失败了。我希望能够在测试中添加一个步骤,记录所有失败请求的请求正文和响应。
我可以启用调试日志,但这会记录所有内容。我只对记录失败的请求感兴趣。是否可以添加诸如失败步骤之类的内容,让我注销请求正文和响应,以便我知道哪个 id 失败了?
class Test extends CommonSimulation {
val graphqlQuery: String =
"""
|{"query":"{person(personId:\"${id}\")}"}
|""".stripMargin
val gqsPerson: ScenarioBuilder = scenario("Service Test")
.feed(csv(Data.getPath + "id.csv").random)
.exec(http("My test")
.post("https://localhost:4000/graphql")
.body(StringBody(graphqlQuery)).asJson
.check(jsonPath("$.errors").notExists)
.headers(headers)
)
setUp(
authToken.inject(atOnceUsers(1))
.andThen(
gqsPerson.inject(constantConcurrentUsers(1) during 1)
))
}
请查看文档。