【问题标题】:gatling Form Parameters : How to pass custom form-data to post requestgatling 表单参数:如何将自定义表单数据传递给发布请求
【发布时间】:2020-04-30 07:30:54
【问题描述】:

我是 gatling 脚本的新手。我正在尝试对我们应用程序的一个 POST api 执行性能测试。此 POST 请求 API 需要传递表单数据。

EG : 请求正文的邮递员集合的打印屏幕

为此,我准备了如下的加特林代码:

      .exec(http("POST Explore JSON")
        .post("/sunrise/explore_json/")
        .header("Content-Type", "application/x-www-form-urlencoded")
        .header("Referer", "https://example.com/sunrise/dashboard/dummy_dashboard/")
        .header("x-csrftoken", "${csrf_token1}")
        .queryParam("form_data","{\"slice_id\":4}")
      //.formParam("form_data","datasource":"2__table") ----------> Tried Method 1
      //.formParamSeq(Seq(("form_data", "datasource":"2__table")))  ----------> Tried Method 2
      //.formParamMap(Map("form_data" ->  "datasource":"2__table")) ----------> Tried Method 3
      //.form("""form_data={"datasource":"2__table"}""") ----------> Tried Method 4

不幸的是,gatling 没有按照我的意愿传递表单数据,目前 gatling 传递表单数据的方式是:

form_data: {"datasource":"2__table"}

我想通过的方式是:(请注意我已删除“:”和以下“空格”)

form_data={"datasource":"2__table"}

我尝试了很多很多方法,但我无法像上面那样成功传递表单数据 有什么方法可以让我通过 form_data={"datasource":"2__table"} 吗?

【问题讨论】:

  • 撇开您通过将 JSON 对象作为表单数据发送来混合请求方法这一事实,通常这就是表单数据的发送方式 (key: value)。您能否检查 Postman 上的控制台以确认它是以 key=value 发送的?

标签: scala performance-testing gatling scala-gatling


【解决方案1】:

试试这个

 .formParam("form_data", "{\"datasource\":\"2__table\"}")

【讨论】:

  • 你能解释一下 - OP 在使用这个 sn-p 后可以期待什么?
【解决方案2】:

我想分享一下,我们是如何解决这个问题的,我猜这是表示form_data的另一种方式?

    .exec(http("POST Explore JSON")
       .post("/sunrise/explore_json/")
       .header("Content-Type", "application/x-www-form-urlencoded")   
       .header("Referer","https://example.com/sunrise/dashboard/dummy_dashboard/")
       .header("x-csrftoken", "${csrf_token1}")
       .queryParam("form_data","{\"slice_id\":4}")
       .bodyPart(StringBodyPart("form_data", s"""{"datasource":"2__table"}"""))
       .check(status.is(200))

【讨论】:

    【解决方案3】:

    我也遇到了同样的“问题”,您可以根据您的要求尝试使用 '.formParam'。 有关更多信息和示例,请查看: Gatling Documentation: Form Parameters

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 2010-11-15
      • 2010-10-12
      • 2014-08-23
      • 2015-11-18
      • 2023-03-25
      • 2016-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多