首页 > 解决方案 > Jmeter 响应数据不足以关联

问题描述

我正在尝试XSRF-TOKEN从 Jmeter 中的响应中提取,但是响应中没有此数据。有没有办法增加 Jmeter 可以看到从服务器返回的数据量?

当使用预先跟踪在 Loadrunner 中关联时,我可以看到并关联这个值没有问题。

从 Jmeter 返回的数据:

type='hidden' id='SAMLRequest' name='SAMLRequest' value='PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c2FtbDJwOkF1dGhuUmVxdWVz
dCB4bWxuczpzYW1sMnA9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDpwcm90b2NvbCIgQXNz
ZXJ0aW9uQ29uc3VtZXJTZXJ2aWNlVVJMPSJodHRwczovL3BvcnRhbC1zdC5zc2MtZ2N3Y3MuY2Ev
d2NzIiBGb3JjZUF1dGhuPSJmYWxzZSIgSUQ9Ino3YjY3ODhiYi01NTY1LTQ1MjUtODY3Mi05ZDBl
YjAyNzUzOTMiIElzUGFzc2l2ZT0iZmFsc2UiIElzc3VlSW5zdGFudD0iMjAxOS0wOS0xMVQxNzo1
MjoxMC4zNjBaIiBQcm90b2NvbEJpbmRpbmc9InVybjpvYXNpczpuYW1lczp0YzpTQU1MOjIuMDpi
aW5kaW5nczpIVFRQLVBPU1QiIFZlcnNpb249IjIuMCI+PHNhbWwyOklzc3VlciB4bWxuczpzYW1s
Mj0idXJuOm9hc2lzOm5hbWVzOnRjOlNBTUw6Mi4wOmFzc2VydGlvbiI+QVBQVElVTS1HQ1dDUy1T
VDwvc2FtbDI6SXNzdWVyPjxzYW1sMnA6TmFtZUlEUG9saWN5IEZvcm1hdD0idXJuOm9hc2lzOm5h
bWVzOnRjOlNBTUw6MS4xOm5hbWVpZC1mb3JtYXQ6dW5zcGVjaWZpZWQiLz48L3NhbWwycDpBdXRo
blJlcXVlc3Q+'

从 Loadrunner 返回的数据:

vuser_init.c(112):     HTTP/1.1 302 \r\n
vuser_init.c(112):     Set-Cookie: ep-accountContext=wcs;path=/;HttpOnly\r\n
vuser_init.c(112):     Set-Cookie: XSRF-TOKEN=eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiI0MjAiLCJpYXQiOjE1NjgyMjEwMzcsInJvbG
vuser_init.c(112):     VzIjoiW10iLCJVVUlEIjoiZWdFTEtHNDlReHAyU0VtRG56azdONHdJR1FLIiwic3ViIjoiYWNjZXNzVG9rZW4iLCJp
vuser_init.c(112):     c3MiOiJBbGV4IElsY2hlbmtvIiwiZXhwIjoxNTY4MjM1NDM3fQ.X2z6p-EQSsH_Kd7JsXA_AVSFMmE22zomlwQzOEg
vuser_init.c(112):     R5Ec;path=/;Secure\r\n
vuser_init.c(112):     Set-Cookie: X-XSRF-TOKEN=egELKG49Qxp2SEmDnzk7N4wIGQK;path=/;Secure\r\n
vuser_init.c(112):     Set-Cookie: ENDPOINT_ACTIONFLOW={DYNAMIC_DNS}/router/;path=/\r\n
vuser_init.c(112):     Set-Cookie: ENDPOINT_DATAMAPPING={DYNAMIC_DNS}/router/;path=/\r\n
vuser_init.c(112):     Set-Cookie: ENDPOINT_DECISION={DYNAMIC_DNS}/router/;path=/\r\n
vuser_init.c(112):     Set-Cookie: ENDPOINT_DMN={DYNAMIC_DNS}/router/;path=/\r\n
vuser_init.c(112):     Set-Cookie: ENDPOINT_APPLICATION_MANAGEMENT={DYNAMIC_DNS}/;path=

标签: rcookiesjmeter

解决方案


这条线很可能是答案:

设置 Cookie: X-XSRF-TOKEN=egELKG49Qxp2SEmDnzk7N4wIGQK;path=/;安全\r\n

  1. HTTP Cookie 管理器添加到您的测试计划
  2. 将下一行添加到user.properties文件

    CookieManager.save.cookies=true
    
  3. 重启 JMeter 来获取属性
  4. 就是这样,现在您应该能够根据需要访问该XSRF-TOKEN${COOKIE_XSRF-TOKEN}

更多信息:如何加载测试受 CSRF 保护的网站


推荐阅读