0

我有内部 Web 应用程序,我必须使用 Jmeter 对其进行测试。该应用程序具有作为用户名、密码和身份验证令牌的安全保护。身份验证令牌随着每个新会话而变化。我无法通过安全令牌。令牌包含在 URL 中,看起来像

http://mytraining.application.net/(S(vj1ckr0nqyvjq3blehcl2jwl))/ApplDefault.aspx?tabid=1. Cookies has look like
Cookie: AUTH_TOK_vj1ckr0nqyvjq3blehcl2jwl=vj1ckr0nqyvjq3blehcl2jwl; AUTH_TOK_syq3r1yu4equ515xzunjobhb=syq3r1yu4equ515xzunjobhb; 

因此,只有当我在 URL 中提交当前令牌时,我的 Jmeter 才能成功运行。如果您有任何想法,请告诉我,如何避免每次都在所有地方(35)提交令牌。

[![在此处输入图像描述][1]][1]

我的 AUTH_TOKEN

正则表达式

4

2 回答 2

0

首先尝试使用 Dmitri 提到的 HTTP Cookie Manager。如果在标头中使用身份验证令牌,这将起作用,例如 Cookie 标头。Jmeter 会自动从服务器设置的 Set-Cookie Header 中(当你添加 HTTP Cookie Manager 时)为每个线程获取并存储在本地,以便在后续请求中使用。

如果 Auth 令牌用于其他地方(但不是标头),例如 Url 的一部分、请求正文等,那么我们应该使用正则表达式提取器(后处理器)和 正则表达式 Jmeter显式捕获它以关联动态值。一旦您将值捕获到 local_variable 中,我们会使用local_variable(正则表达式提取器中的参考名称字段)替换实际值,只要我们在后续请求中观察到动态值,这里是 auth 令牌,使用语法 ${local_variable}。

于 2016-09-12T07:37:07.217 回答
0

Auth_TOK看来您可以从 cookie 中计算出您的价值

  1. 将下一行添加到user.properties文件(位于 JMeter 的“bin”文件夹中

    CookieManager.save.cookies=true
    
  2. 重启 JMeter 来获取属性
  3. HTTP Cookie 管理器添加到您的测试计划
  4. 现在您应该能够使用Debug SamplerView Results Tree侦听器组合查看存储为JMeter 变量的 Cookie,并将 cookie 值用作 URL 的一部分

我还建议使用 JMeter 检查 ASP.NET 登录测试,因为我的期望是您将不得不处理一些其他动态参数。

于 2016-09-12T04:34:25.117 回答