【问题标题】:How to store an API token in a variable using JMeter如何使用 JMeter 将 API 令牌存储在变量中
【发布时间】:2021-10-26 13:05:53
【问题描述】:

我对 Jmeter 很陌生,刚刚开始研究它。我有一个场景,下面是输入细节。

场景:

  1. 使用 microsoft 凭据 (API No.1) 登录应用程序
  2. 导航到客户搜索页面
  3. 选择“按名称搜索”的值(按名称是 API 2 号)
  4. 点击搜索
  5. 将显示结果

Step 1 API 我能够成功地做到这一点,因为我在互联网上关注了一些视频。 但对于与应用程序相关的 API(按名称),我可以为当前会话执行此操作,但不能为所有会话执行此操作。

按名称 API,我将“HTTP 请求”的“正文数据”作为

{"branch":null,"agent":{"code":"00092","type":null,"name":"SOVQOSTOVJT OSJOTWW","unit":{"code":"A0102" ,"name":"OJTVWXSKSVVKJ JVSXVJXS","unitHead":null},"branch":{"code":"A0100","name":"SXTJV","channel":null},"rank":{ "code":"BM","description":"高级主管"},"emailAddress":"mt_mls_bm1@mlsg.onmicrosoft.com","status":{"code":"01","description":"活动"},"候选人":{"number":"14000350","name":"SOVQOSTOVJT OSJOTWW","dob":"1956-04-25"},"originalAgentCode":"000092"},"searchBy ":"P","nameSearchParam":{"customerName":null,"idNo":null},"policySearchParam":{"policyNo":"14708787"},"policyStatusSearchParam":{"policyStatus":null," startDate":null,"endDate":null,"daysLeftBeforeExpiry":null},"policyByServiceTrackingSearchParam":{"customerName":null,"policyNo":null,"idNo":null,"customerStatus":null,"recievedDateBST" :{"begin":"2021-06-26T","end":"2021-08-26T"}},"policyByPremiumSearchParam":{},"policyByUnsuccess":{},"unit":null}

HTTP 标头管理器

JSON 提取器

问题是,如果您看到 2 个令牌值“manutouch_token”和“X-Auth-Token”,它们是动态值。当我在当前会话中时,这将具有这些值,注销后将生成新值。我想将这些令牌值存储在某处并传递它,或者需要提取令牌的某些部分。我不知道如何执行此过程。我完全不知道。谁能帮帮我。

【问题讨论】:

    标签: api jmeter performance-testing jmeter-5.0


    【解决方案1】:

    这些令牌很可能在登录过程中的某个地方返回,您需要仔细检查所有响应(注意字面上的所有内容:响应正文,response headers,响应URL,尤其是在redirection的情况下)-令牌应该在那里。

    一旦你弄清楚他们住在哪里,你应该能够使用合适的 Post-Processors 提取它们,配置良好的后处理器将从响应中提取令牌并将其存储到 JMeter Variable 中,你将能够用包含实际标记的动态变量替换记录的值。

    参见Using Regular Expressions to Extract Tokens and Session IDs to Variables 文章的示例实现(仅用作参考,不作为指南,因为您的应用程序细节可能不同),关键是为测试中的每个动态参数实现correlation场景

    【讨论】:

    • 非常感谢 Dmitri T。我能够得到解决方案...最后我找到了这些令牌并将它们存储在一个变量中。
    猜你喜欢
    • 2022-01-24
    • 2016-02-14
    • 2022-01-17
    • 2021-07-20
    • 2019-04-29
    • 2020-07-04
    • 1970-01-01
    • 2023-03-08
    • 2018-05-20
    相关资源
    最近更新 更多