【问题标题】:API testing using jmeter使用 jmeter 进行 API 测试
【发布时间】:2018-11-19 09:53:56
【问题描述】:

我正在尝试在 Jmeter 中进行一些 API 测试。 我试图关注这个https://octoperf.com/blog/2018/04/23/jmeter-rest-api-testing/。但是我需要从cookie中获取token。

谁能给我一个解决方案?使用 Jmeter 5.0 版

抱歉,如果之前有人问过这个问题。但是,我找不到解决方案。

【问题讨论】:

    标签: jmeter web-api-testing jmeter-5.0


    【解决方案1】:
    1. 根据JMeter Best Practices you should always be using the latest version of JMeter,因此考虑在下次有机会时迁移到JMeter 5.0(或JMeter Downloads 页面上提供的任何最新版本)。

    2. 如果您要查找的值是 HTTP Cookie - 使用 HTTP Cookie Manager 获取 cookie 值非常有意义

      • 将下一行添加到 user.properties 文件:

        CookieManager.save.cookies=true
        
      • 重启JMeter来获取属性
      • 就是这样,现在您应该将所有传入的 cookie 存储为 JMeter Variables 并带有 COOKIE_ 前缀

    【讨论】:

    • 谢谢,但我在 Jmeter 变量下没有得到任何值。我在调试采样器下设置了 Jmeter 变量 TRUE。我已经用截图更新了问题。
    • 为了确保我们在同一页面上:您是否已将 HTTP Cookie Manager 添加到您的测试计划中?
    • 您能否在 View Results Tree 侦听器中显示响应并打开 Response headers 选项卡以显示您要提取的值?
    • @Dmitri T 添加。
    【解决方案2】:

    上面的link 使用 JSON 提取器来关联值。正如您正确注意到的,JSON 提取器只能用于响应的主体,而不能用于标头(cookie 大多出现在响应标头中)。为此,我们将不得不恢复使用传统的正则表达式提取器。

    选择“要检查的字段” 作为“响应标头”,我们就可以开始了。在这种情况下,需要使用正则表达式来提取值,并且无法利用 OPs 链接中使用的方法。

    例如,如果我的响应头如下,

    如果我想捕获第 11 行中的 NID 令牌作为 Set-Cookie 参数的一部分,我将使用下面的正则表达式。

    cookie 值被捕获并可供使用。这在 Debug Sampler 中可见。

    有关如何使用正则表达式提取器进行关联的更多信息,请使用此链接How to do Correlation

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-09
      • 1970-01-01
      • 2019-03-10
      • 2015-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多