.net 无法在Jmeter负载测试中处理视图/状态和事件验证

.net 无法在Jmeter负载测试中处理视图/状态和事件验证,.net,jmeter,viewstate,load-testing,eventvalidation,.net,Jmeter,Viewstate,Load Testing,Eventvalidation,我目前正在对一个.Net web应用程序进行负载测试。在这种情况下,用户将登录并执行某些导航步骤,然后他/她将填写一份评估表,提交评估表,然后从应用程序中注销 因此,对于这个场景,有许多GET和POST请求。作为一个.Net应用服务器,它将使用视图状态和_事件验证进行一些身份验证。但是为了处理这个问题,我不确定需要从哪个请求获取这2个参数并将其传递给哪个请求,因为这个场景是GET和POST请求的组合 登录(获取) 登录(POST) 回家(得到) 家(邮政) 评估(GET) 评估(POST)-->

我目前正在对一个.Net web应用程序进行负载测试。在这种情况下,用户将登录并执行某些导航步骤,然后他/她将填写一份评估表,提交评估表,然后从应用程序中注销

因此,对于这个场景,有许多GET和POST请求。作为一个.Net应用服务器,它将使用视图状态和_事件验证进行一些身份验证。但是为了处理这个问题,我不确定需要从哪个请求获取这2个参数并将其传递给哪个请求,因为这个场景是GET和POST请求的组合

登录(获取) 登录(POST) 回家(得到) 家(邮政) 评估(GET) 评估(POST)-->它将根据客户端名称加载程序列表 评估(POST)-->它将提交客户端和程序名称以获取特定的评估表 评估(GET) 评价(员额) 评估(GET) 注销(获取)


所以伙计们帮我把这件事简短地说出来

你应该检查视图状态和事件验证参数什么时候改变。(你可以用右键点击并查看页面源代码轻松做到这一点)。因为这些人识别你在哪一页


在我的上一个脚本中,我有23个视图状态发生更改的不同位置,我必须提取并更改它23次。因此,没有人能回答您应该在哪里更改它们,因为我们看不到响应和您正在测试的应用程序。

您应该检查视图状态和事件验证参数何时更改。(您可以通过右键单击并查看页面源代码轻松完成此操作)。因为这些人识别你在哪一页


在我的上一个脚本中,我有23个视图状态发生更改的不同位置,我必须提取并更改它23次。因此,没有人能回答您应该在哪里更改它们,因为我们看不到响应和您正在测试的应用程序。

您可以非常轻松地在JMeter中处理请求之间的动态POST参数。 对于viewstate和eventvalidation,将两个正则表达式提取器添加到web负载测试中

Name: Regex Extractor - ViewState
Reference Name: v
Regular Expression: name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"
Template: $1$
Match No.(0 for Random): 1

录制后,您必须编辑录制控制器中的每个HTTP请求,方法是将
\uuu VIEWSTATE
\uu EVENTVALIDATION
的值替换为
${v}
${e}


这将有效地通过下一个请求中最新响应的viewstate和eventvalidation

您可以非常轻松地在JMeter中处理请求之间的动态POST参数。 对于viewstate和eventvalidation,将两个正则表达式提取器添加到web负载测试中

Name: Regex Extractor - ViewState
Reference Name: v
Regular Expression: name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"
Template: $1$
Match No.(0 for Random): 1

录制后,您必须编辑录制控制器中的每个HTTP请求,方法是将
\uuu VIEWSTATE
\uu EVENTVALIDATION
的值替换为
${v}
${e}


这将有效地通过下一个请求中最新响应的viewstate和eventvalidation

为了提取VIEWSTATE和EVENTVALIDATION值并将其转换为JMeter变量,需要使用以下后处理器之一:

有关提取器的实际示例和示例配置,请参阅指南


另外,不要忘记添加到测试计划中,以表示浏览器cookie、处理基于cookie的身份验证和模拟浏览器会话。

您需要使用以下后处理器之一,以便提取VIEWSTATE和EVENTVALIDATION值并将其转换为JMeter变量:

有关提取器的实际示例和示例配置,请参阅指南

另外,不要忘记在测试计划中添加表示浏览器cookie、处理基于cookie的身份验证和模拟浏览器会话的内容