Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 无法获取承载令牌-Web测试、性能测试_Visual Studio_Azure Active Directory_Performance Testing_Bearer Token_Webtest - Fatal编程技术网

Visual studio 无法获取承载令牌-Web测试、性能测试

Visual studio 无法获取承载令牌-Web测试、性能测试,visual-studio,azure-active-directory,performance-testing,bearer-token,webtest,Visual Studio,Azure Active Directory,Performance Testing,Bearer Token,Webtest,我正在Visual Studio 2017中创建一个用于性能测试的Web测试。我们的web应用程序是一个具有AAD身份验证前端的Azure。失败的是作为测试用户的身份验证。当用VS或fiddler录制时,我无法再次播放测试。我认为这是一个象征性的问题 我能够在浏览器中的响应头的位置参数中看到身份验证承载令牌。范例- 请求URL: 响应标题: 地点: 但是,我无法在VisualStudio中获取不记名令牌。我检查了VisualStudio是否使用相同的参数发出相同的请求,但在响应中,它得到的是以下

我正在Visual Studio 2017中创建一个用于性能测试的Web测试。我们的web应用程序是一个具有AAD身份验证前端的Azure。失败的是作为测试用户的身份验证。当用VS或fiddler录制时,我无法再次播放测试。我认为这是一个象征性的问题

我能够在浏览器中的响应头的位置参数中看到身份验证承载令牌。范例-

请求URL

响应标题

地点:

但是,我无法在VisualStudio中获取不记名令牌。我检查了VisualStudio是否使用相同的参数发出相同的请求,但在响应中,它得到的是以下错误,而不是令牌

地点:

而不是代币


有人面临类似的问题吗?谢谢,伙计们。

当您记录测试时,您很可能与组织的内部部署AD FS一起经历了联合登录过程。(作为一系列重定向,此联合登录可能是透明的。)作为此联合登录的一部分,您组织的AD FS将向Azure AD颁发一个标识用户的SAML令牌。Azure AD随后将验证该SAML令牌,并且由于所有内容都已签出,它将自己的令牌颁发给应用程序(带有
#id_标记=…
的响应)

但是,当您稍后尝试重播这些步骤时,AD FS(在原始录制期间)颁发的原始SAML令牌已过期且不再有效。因此,Azure AD不会使用预期的ID令牌重定向回您的应用程序,而是重定向回您的应用程序,并显示有关错误SAML令牌的错误

您应该能够通过记录新的登录序列并立即重播测试来验证这一点。您可能会发现测试首先会通过,然后在令牌过期后最终会再次失败


此问题的解决方案在很大程度上取决于您的测试环境、Azure AD和AD FS环境,以及您试图加载测试的具体内容。一个选项是使用Azure AD中专用测试租户提供的仅限云的专用测试用户(您不应在测试中包含来自生产环境的真实用户的任何凭据)。如果您尝试验证的部分内容包括联合登录,那么您应该使用AD FS的测试实例,并将您的测试Azure AD租户与此测试AD FS联合起来。

是否每次都可以获得新令牌?如果是,那么如何获得?当我从Visual Studio运行web测试时。如前所述,这完全取决于您所处的环境运行您的测试。