Performance JMeter测试重放期间的不同结果
我对JMeter有一个奇怪的问题。Performance JMeter测试重放期间的不同结果,performance,jmeter,Performance,Jmeter,我对JMeter有一个奇怪的问题。 我录制了一些web应用程序,没有任何问题。回放测试时出现问题。 由于某些原因,我在播放期间收到的结果与录制期间不同 当我比较录制和播放过程中发出的Http请求时,我看不到任何区别(除了我从以前的请求中提取并作为参数传递的一些安全令牌)。 更确切地说,在录制过程中,我接收到一个大主体(>5kB)的响应,而在回放过程中,响应主体是空的。响应代码为200(正常)。 这个主体包含来自数据库的关键数据,所以我担心这个JMeter脚本所做的度量不会反映应用程序的实际行为,
我录制了一些web应用程序,没有任何问题。回放测试时出现问题。 由于某些原因,我在播放期间收到的结果与录制期间不同 当我比较录制和播放过程中发出的Http请求时,我看不到任何区别(除了我从以前的请求中提取并作为参数传递的一些安全令牌)。 更确切地说,在录制过程中,我接收到一个大主体(>5kB)的响应,而在回放过程中,响应主体是空的。响应代码为200(正常)。 这个主体包含来自数据库的关键数据,所以我担心这个JMeter脚本所做的度量不会反映应用程序的实际行为,只是我不会度量我真正需要的 现在我的问题是:
POST http://10.133.27.81:8080/c/portal/render_portlet
POST data:
p_l_id=69210&p_p_id=blank_WAR_Blank_INSTANCE_iNM3&p_p_action=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-2&p_p_col_pos=1&p_p_col_count=2
[no cookies]
Request Headers:
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Accept-Language: pl
Accept: */*
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
csrf_token: 1GXK-0QD7-GFPJ-JLDG-JP2G-J390-BFLG-7LL7
Pragma: no-cache
Method: POST /c/portal/render_portlet HTTP/1.1
X-Requested-With: OWASP CSRFGuard Project
Referer: http://10.133.27.81:8080/group/bou
Accept-Encoding: gzip, deflate
Content-Length: 143
Host: 10.133.27.81:8080
更新:为了确保哪些标题或参数是恒定的,我在不同的会话中对相同的测试用例进行了4次录制,并对它们进行了比较,因此我非常确定只有
csrf\u令牌
必须与从其他请求获取的值一起输入字段。我添加了调试采样器来验证是否正确获取了该值
更新2:发现问题。
这里有两个问题:
HTTP Header Menager
s和我的请求包含csrf_令牌
(我在发布此问题之前检测到)。使用文本编辑器在xml中进行搜索是一个很好的解决方法httpcookiemanager
(我把这归咎于我自己和IE)添加了一个新问题Marek您的问题肯定是由于缺少一个您没有计算的动态请求参数 例如,在csrf_令牌头中,您是否将其设置为变量?或者,您是否传输其初始记录值,但也可以在包含某些哈希数据或数值数据的任何参数处传输,这些数据引用了页面或请求中不存在的某些内容 例如col pos我看到p_p_col_id和相关参数,您确定它们引用了重播中的某些内容吗
在这种情况下,出现JMeter错误的可能性非常小。响应代码200并不一定意味着在应用程序级别一切都很顺利 要了解更多详细信息,您可以使用和。
示例。是的,我已将其作为可验证的,我已进行了相关更新以使其更清晰。我使用了
调试采样器,我将尝试调试后处理器,我希望它将有助于检测问题源。搜索中的错误功能已在夜间构建中修复,请参阅,获取夜间构建: