如何使用Jmeter测试REST API时对用户进行身份验证

时间:2016-01-26 11:18:13

标签: jmeter

我正在尝试使用Jmeter创建一个测试REST服务的脚本。 直到现在我才使用Chrome的高级REST客户端。 我的身份验证请求是GET,在高级REST中它是这样的: https://username:password@URL:portnumber 它是一个GET请求

现在我正在使用Jmeter。我尝试了以下方法: 我添加了HTTP授权管理器,并在其中提到了基本URL和用户名/密码。 当我试图提出请求时,它显示我“未经授权”

我也尝试使用普通的https请求登录,但没有成功。

手动访问时,会出现授权弹出窗口,并在此窗口中提交用户名和密码。

请建议我如何使用Jmeter登录。

1 个答案:

答案 0 :(得分:0)

很少有建议:

  1. 您尝试点击的网址很可能与您不匹配,而在HTTP授权管理器中指定的网址则会仔细检查。
  2. 添加查看结果树监听器,并确保标题如下:

    Authorization: Basic xxxxxxxxxxxx=
    

    与请求一起发送,并与真实浏览器发送的请求进行比较。

  3. 尝试切换"实施"您的HTTP请求采样器到HttpClient3.1,最简单的方法是使用HTTP Request Defaults

  4. 最后,您可以使用HTTP Header Manager发送相关标头,其名称应为Authorization,并且Basicusername:password编码在{{ 3}}。通过JMeter插件可以使用Base64功能。