首页 > 解决方案 > 为什么我会收到此“HttpRequestAction - 'httpRequest-1' 无法执行:没有命名属性”

问题描述

我正在尝试创建我的第一个 Gatling 性能测试并收到此错误,我无法找出原因。

错误

HttpRequestAction - 'httpRequest-1' failed to execute: No attribute named 'anumber' is defined

这是我的代码

package sweetpackage

import io.gatling.core.Predef._
import io.gatling.http.Predef._
import scala.concurrent.duration._

class OneClassToRuleThemAll extends Simulation {

  object SubmitGet {

    val feeder = csv("numbers.csv")

    val GetAPI = exec(
      http("/v0/playa/palyaid")
        .get("/services/playas/v0/playa/${anumber}")
    )
  }
  
  val httpProtocol = http
    .baseUrl("https://playassite")
    .header("Sec-Fetch-Site","same-origin")
    .header("Sec-Fetch-Mode","cors") 
    .header("Sec-Fetch-Dest","empty")
    .acceptHeader("application/json")
    .acceptLanguageHeader("en-US,en;q=0.9")
    .acceptEncodingHeader("gzip, deflate, br")
    .userAgentHeader("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36 Edg/86.0.622.38")

  val users = scenario("KingPins").exec(SubmitGet.GetAPI)

  setUp(
    users.inject(atOnceUsers(1))
  ).protocols(httpProtocol)
}

我的测试数据文件是一个numbers.csv以 UTF-8 编码命名的 csv 文件。我在 MS Excel 中创建了文件

anumber
500100

标签: scalacsvgatling

解决方案


在您提供的示例中,您没有feed在场景中添加一个动作来实际从您的馈送器中读取。你只是在你的评论中这样做了。因此,注入的数据注入了您的虚拟用户。


推荐阅读