如何在管道中的 Jmeter Taurus 任务中使用 Oauth 2.0 和 PKCE 来测试托管在 Azure 应用服务上的 API

问题描述

我正在尝试将 Jmeter 插件与 Azure 发布管道中的 Taurus 任务(Taurus 安装程序、Taurus Runner)一起使用。我想对 Azure 应用服务上托管的 API 进行测试。 API 在 Azure AD 中注册。首先,我需要对 Jmeter 任务使用 Oauth2.0 来检索访问令牌,以便它可以执行这些 API 的负载测试以及数据负载测试。目前,API 正在使用带有 PKCE 的授权代码流,所以我不确定如何检索访问令牌。

我正在使用 Apache Jmeter 工具创建 JMX 脚本,并在 Azure 发布管道中使用该 JMX 脚本。但是我需要在管道中使用 Oauth 2.0 才能进行性能测试。

我可以通过邮递员完成上述操作,但不确定 Jmeter。

任何建议。 谢谢

解决方法

如果您可以“使用邮递员执行上述操作”,那么您应该可以使用 JMeter 执行此操作,绕过 OAuth 挑战的最简单方法是

  1. Record the requests originating from Postman using JMeter's HTTP(S) Test Script Recorder
  2. 并根据correlation
  3. 执行动态参数的RFC 7636