Authentication Jmeter未通过脚本中的Microsoft身份验证,无法在我的测试网站上测试性能,显示访问被拒绝

Authentication Jmeter未通过脚本中的Microsoft身份验证,无法在我的测试网站上测试性能,显示访问被拒绝,authentication,jmeter,Authentication,Jmeter,我的应用程序在登录之前有一个microsoft身份验证&我已经录制了脚本,但当我运行它时,每次都会显示拒绝访问错误。我设置了身份验证管理器,但仍然存在相同的错误。见附图 我尝试了HTTP身份验证管理器&提供了登录用户名和密码 您的应用程序最可能使用的是HTTP授权管理器,因此您既不能真正录制和重播,也不能使用HTTP授权管理器处理 根据您的应用程序设置,您需要: 要执行查询参数的 或通过传递相关令牌。根据您的应用程序登录链实现的不同,获取令牌的过程可能会有所不同,请参阅本文,了解一些关于在JMe

我的应用程序在登录之前有一个microsoft身份验证&我已经录制了脚本,但当我运行它时,每次都会显示拒绝访问错误。我设置了身份验证管理器,但仍然存在相同的错误。见附图

我尝试了HTTP身份验证管理器&提供了登录用户名和密码


您的应用程序最可能使用的是HTTP授权管理器,因此您既不能真正录制和重播,也不能使用HTTP授权管理器处理

根据您的应用程序设置,您需要:

  • 要执行查询参数的
  • 或通过传递相关令牌。根据您的应用程序登录链实现的不同,获取令牌的过程可能会有所不同,请参阅本文,了解一些关于在JMeter测试中绕过第三方提供商登录挑战的想法
    最可能的情况是,您的应用程序使用了HTTP授权管理器,因此它既不能真正记录和重播,也不能使用HTTP授权管理器处理

    根据您的应用程序设置,您需要:

  • 要执行查询参数的
  • 或通过传递相关令牌。根据您的应用程序登录链实现的不同,获取令牌的过程可能会有所不同,请参阅本文,了解一些关于在JMeter测试中绕过第三方提供商登录挑战的想法
    检查是否可以提供身份验证凭据作为请求的参数


    例如www.abc.com?username=abc&password=abc。使用Jmeter复制相同的命令,检查是否可以提供身份验证凭据作为请求的参数

    例如www.abc.com?username=abc&password=abc。使用Jmeter复制相同的功能(如果不介意手动搜索,也可以使用浏览器开发工具)并通过浏览器手动登录

    检查提交给Microsoft的令牌/GUID请求,并搜索浏览器从何处获取这些字符串(它将位于以前的请求“响应”正文或重定向URL中。在Fiddler中,您可以对响应使用“查找”功能,浏览器开发工具您必须手动查找)

    然后,您可以使用JMeter
    正则表达式提取器
    后处理器(或您喜欢的任何其他后处理器)将该字符串从先前的请求提取到变量中。 在登录请求中,您可以使用该变量的值(如果将正则表达式后处理器与捕获组一起使用,则第一个组的值将是
    ${variable\u g1}

    您可能会有一个防伪值,您可以从登录页面的HTML中提取该值,该值需要与用户名和密码一起提交,然后在响应中,您将在响应正文/URL中获得一个cookie集和可能的JWT令牌。

    使用(如果不介意手动搜索,也可以使用浏览器开发工具)并通过浏览器手动登录

    检查提交给Microsoft的令牌/GUID请求,并搜索浏览器从何处获取这些字符串(它将位于以前的请求“响应”正文或重定向URL中。在Fiddler中,您可以对响应使用“查找”功能,浏览器开发工具您必须手动查找)

    然后,您可以使用JMeter
    正则表达式提取器
    后处理器(或您喜欢的任何其他后处理器)将该字符串从先前的请求提取到变量中。 在登录请求中,您可以使用该变量的值(如果将正则表达式后处理器与捕获组一起使用,则第一个组的值将是
    ${variable\u g1}

    您可能会有一个防伪值,您可以从登录页面的HTML中提取该值,该值需要与用户名和密码一起提交,然后在响应中,您将获得一个cookie集,并可能在响应正文/URL中获得JWT令牌