无法使用 GRPC 插件生成 Gadling 报告

问题描述 投票:0回答:1

希望你今天表现出色,我已经完成了 Gattle 的流定义,如下:

val grpcConf = grpc(managedChannelBuilder("url:80").usePlaintext())
  
  val Authorization: Metadata.Key[String] = Metadata.Key.of("Authorization", Metadata.ASCII_STRING_MARSHALLER)

  val thePayload = StartPairingRequest(Option(Device("plain")))
  val fromClientSide = grpc("Speak")
    .serverStream[StartPairingRequest, StartPairingResponse](RelayServerGrpc.METHOD_START_PAIRING, "gettingThePairingKey")

  val speaker = scenario("BasicSimu")
  .exec(
    fromClientSide
      .start(thePayload)
      .header(Authorization)(s"Bearer $TokenKey")   
  )
  .pause(5)

  setUp(
    speaker.inject(atOnceUsers(1))
  ).protocols(grpcConf)
}

但是,当我尝试运行时,出现此错误

java.lang.UnsupportedOperationException: There were no requests sent during the simulation, reports won't be generated

我已经查看了之前的错误报告,这里这里,但找不到解决方案,“。”操作并不缺乏(我认为是这样),这可能是什么原因?

附加信息:我尝试将密钥更改为错误值,这使得 Gattle 返回与上面相同脚本内容的报告。

其他信息#2:可能有一个问题,我忘记将其放入加特林发送请求的摘录中,所以我也将其放入,但同样的问题仍然存在。

附加信息#3:我检查了回复,有内容与我给出的请求完全相同,但仍然没有报告。

scala grpc gatling
1个回答
0
投票

您已将

.pause(5)
添加到您的场景中。但如果您的直播持续时间超过 5 秒,日志将不会包含直播结束事件。

由于您的模拟中没有其他内容,因此您会收到“模拟期间没有发送任何请求,因此不会生成报告”异常。

您可以添加以下内容以使虚拟用户等待流结束。

.exec(
  fromClientSide // weird name but OK
    .reconciliate(waitFor = StreamEnd)
)
© www.soinside.com 2019 - 2024. All rights reserved.