【问题标题】:Jmeter EVENTVALIDATION and VIEWSTATE values passed incorrectlyJmeter EVENTVALIDATION 和 VIEWSTATE 值传递不正确
【发布时间】:2017-01-26 18:23:53
【问题描述】:

我需要登录一个网页。将参数从导航屏幕传递到POST 到登录屏幕,我使用了CSS/Jquery 提取器。在提取的三个值中,Viewstate 生成器值被正确传递。但是EventvalidationViewstate 在传递时具有完全不同的值。

我从导航到网站获得的价值:

`VIEWSTATEGENERATORExtractor=C2EE9ACC,VIEWSTATEExtractor=r6PHK0,
EVENTVALIDATIONExtractor=xLhYcNpU3vb8+Om5`      
And passed as VIEWSTATEGENERATOR =C2EE9ACC
EVENTVALIDATION value=Blncm,VIEWSTATE" value=iFpefxx7

某些值是在通过而不是从以前的浏览器导航时生成的。

不明白如何正确传递 1 个值而不是其他两个值。我对所有三个都使用相同的格式

【问题讨论】:

  • 分享完整的响应和正则表达式。有可能存在超过 1 个视图状态
  • 我使用 CSS/Jquery Extractor 和 Jsoup:Jquery 表达式作为输入[id=__viewstate],属性作为值;匹配号:1。当作为参数传递时,我得到的结果是
  • 我很震惊,因为尽管我使用 {eventvalidation} 引用,但在请求之间传递了一些随机值。它不会传递不正确的值,而是在请求和之间传递一些随机值

标签: jmeter viewstate eventvalidation


【解决方案1】:

这是 viewstate 和 eventvalidation 参数的全部,它们每次都不同,这就是为什么您需要为每个请求关联它们。VIEWSTATE 具有有关客户端页面状态的所有信息,基本上用户在每一步做了什么。 EVENTVALIDATION 是CSRF 保护的一种形式,因此每次也必须不同。

您可以使用View Results Tree 侦听器验证您的脚本是否正在执行它应该执行的操作。

参考资料:

【讨论】:

  • 非常感谢德米特里。但是再澄清一点 那么为什么我们必须将事件验证和视图状态作为参数从一个步骤传递到另一个步骤? stackoverflow.com/questions/33030823/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-06-01
  • 2019-12-03
  • 1970-01-01
  • 1970-01-01
  • 2020-11-29
  • 2015-03-29
  • 1970-01-01
相关资源
最近更新 更多