我的应用程序在登录之前已经对其进行了Microsoft身份验证,并且我已经记录了脚本,但是当我运行它时,它每次都向我显示访问被拒绝错误。参见所附图片。
我尝试过HTTP Authentication Manager
并提供了登录用户名和密码。
答案 0 :(得分:0)
您的应用程序很可能使用了OAuth,因此它既不是您真正可以记录和重放的内容,也不是可以使用HTTP Authorization Manager处理的东西。
根据您的应用程序设置,您将需要:
答案 1 :(得分:0)
检查是否可以提供身份验证凭据作为请求的参数。
例如www.abc.com?username=abc&password=abc。用Jmeter复制相同的内容
答案 2 :(得分:0)
使用Fiddler(或者,如果您不介意手动搜索,也可以使用浏览器开发工具),然后通过浏览器手动登录。
检查提交给Microsoft的令牌/ GUID的请求,并搜索浏览器从何处获取这些字符串(它将位于先前请求的响应的主体之一或重定向URL中。在Fiddler中,可以在响应中使用查找功能,您必须手动找到浏览器开发工具)。
然后,您可以使用JMeter Regular Expression Extractor
后处理器(或您喜欢的任何其他后处理器)将字符串从较早的请求中提取到变量中。
然后,您可以在登录请求中使用该变量的值(如果您将正则表达式后处理器与捕获组一起使用,则第一组的值将为${variable_g1}
您可能会从登录页面的HTML中提取一个伪造的值,该值需要与用户名和密码一起提交,然后在响应中您将获得一个cookie集和可能的JWT令牌在响应正文/ URL中。