【问题标题】:Load Testing RestFul Api , one time authorization负载测试 RestFul Api ,一次性授权
【发布时间】:2019-07-16 22:03:50
【问题描述】:

我需要测试 API 是否正常工作,并且还需要对它们中的每一个施加负载。

在邮递员中我可以做到这一点,但如何在 jmeter 上获得它。

我有一个获取 access_tokken 的 POST 请求,然后复制此令牌并将其放入其他 API Header 以从 API 获取响应。

这是获取访问权限的请求 json:

Response 201 (application/json)Body  {
      "token_type":  "Bearer",
      "expires_in" : 3600,
      "access_token" : "generated_access_token"
  }

运行时我得到:

{"token_type":"Bearer","expires_in":3599,"access_token":"accesstoken value here"}

需要获取这个 access_token 并将其传递给其他 POST 主体以获得响应。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    添加 JSON Extractor 作为请求的后处理器(子)

    Variable Names access_token
    
    JSON Path expression `$.access_token`
    
    Match No. 1
    

    然后使用${access_token} 作为其值(或在JSR223 中使用vars.get("access_token")

    对于下一个请求的标头,在第二个请求下添加HTTP Header Manager,如下所示:

    【讨论】:

    • 在哪里添加 ${access_token}。
    • 当你需要它时,例​​如在下一个 HTTP 请求的正文数据中
    • 我需要将它作为标头管理器传递,我添加了 ${access_token} ,但在请求正文中它显示为 .Request Headers: Connection: keep-alive Accept: application/json Authorization: { access_token} 内容类型:application/json 内容长度:64
    • 对于下一个请求的标头,在第二个请求下添加HTTP Header Manager。查看更新的答案
    • 完成但还是一样。
    【解决方案2】:

    首先,您将访问令牌提取到变量

    然后您在其他请求/请求中的正确标头中使用此变量

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-10
      • 1970-01-01
      • 2012-06-06
      • 1970-01-01
      • 2014-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多