当用户在加特林注入时更改标头值

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

我想在用户每次注入Gatling时更改标头值。因为运行代码时我的代码有错误。错误是“签名已过期:20200124T170359Z现在早于20200124T170552Z(20200124T172052Z-15分钟。”。我的代码是


val签署者:AwsSigner = AwsSigner(AwsCredentialsProviderWithSession,区域,服务,时钟)

valsignedHeaders = signer.getSignedHeaders(Uri,PostMethod,queryParams,标头,emptyPayload)

val scen = scenario(“首页”).repeat(100){

 .exec(
     http("Custom headers")
       .get("https://sqs." + region + ".amazonaws.com"+/809166105827/ACP-CS-DEV-VA6-WorkerQueueService-QueueServiceTestClient+"?Action=SendMessage&MessageBody=" + queryEnc)
     .headers(signedHeaders)

setUp(

   sendLoadToAws.scen.inject(rampUsersPerSec(10) to 15  during (60))
)
amazon-web-services header gatling
1个回答
0
投票

您需要使用feed,有文档https://gatling.io/docs/current/session/feeder/

因此,第一个创建此提要

val signedHeaders = {
    val signedHeaders = signer.getSignedHeaders(Uri, PostMethod, queryParams, headers, emptyPayload)

    Iterator.continually(Map(
    "header_1" -> signedHeaders.header_1,
    "header_2" -> signedHeaders.header_2
  }

现在需要为您的方案添加提要

.feed(signedHeaders)
   .exec(
     http("Custom headers")
       .get("https://sqs." + region + ".amazonaws.com"+/809166105827/ACP-CS-DEV-VA6-WorkerQueueService-QueueServiceTestClient+"?Action=SendMessage&MessageBody=" + queryEnc)

最后添加标题以请求

.feed(signedHeaders)
       .exec(
         http("Custom headers")
           .get("https://sqs." + region + ".amazonaws.com"+/809166105827/ACP-CS-DEV-VA6-WorkerQueueService-QueueServiceTestClient+"?Action=SendMessage&MessageBody=" + queryEnc)
           .header("header_name_1", "${header_1}")
           .header("header_name_2", "${header_2}")
© www.soinside.com 2019 - 2024. All rights reserved.