发布请求与JMeter无法正常工作

时间:2014-06-01 05:21:42

标签: java jsf jmeter performance-testing

我有一个页面,其中包含帖子列表,每个帖子都有一个评论链接,其中显示一个文本区域(使用javascript),用户填写此textarea,然后按Enter键发布评论(使用ajax) ,这是我在发布评论后在浏览器中看到的表单数据:

feedForm:feedForm
feedForm:j_idt221:0:j_idt222:j_idt286:commentText:hi
feedForm:j_idt221:1:j_idt222:j_idt286:commentText:
javax.faces.ViewState:-1278084094245361929:-1028657209799449340
javax.faces.source:feedForm:j_idt221:0:j_idt222:j_idt286:commentText
javax.faces.partial.event:keypress
javax.faces.partial.execute:feedForm:j_idt221:0:j_idt222:j_idt286:commentText feedForm:j_idt221:0:j_idt222:j_idt286:commentText
javax.faces.partial.render:feedForm:j_idt221:0:j_idt222:j_idt286:commentText feedForm:j_idt221:0:j_idt222:j_idt286:feedcomments
javax.faces.behavior.event:keypress
javax.faces.partial.ajax:true

我所做的是我在Jmeter中创建了一个post HTTP请求,并将上面的表单数据作为参数添加,并且在运行测试计划时,我没有收到错误,但是没有添加注释。

这是我发布评论的JSF代码:

<h:inputTextarea id="commentText" placeholder="#{msg['writeacomment.text']}" title="#{msg['writeacomment.text']}"
                    onkeypress="if(event.keyCode == 13 &amp;&amp; !event.shiftKey){event.preventDefault();return true;}else{return false;}"
                    value="#{feedBean.commentText}" maxlength="2000" onkeyup="countChar(this, '#{msg['remaining.text']}')">
                    <f:ajax event="keypress" listener="#{feedBean.postComment(cc.attrs.value)}" render="commentText feedcomments" />
                </h:inputTextarea>

请告知如何解决这个问题。

1 个答案:

答案 0 :(得分:2)

问题是我在我的帖子请求中传递了javax.faces.ViewState硬编码,这是错误的,所以我必须为之前的请求中的视图状态创建User defined variableCSS/JQuery Extractor能够提取视图状态并在下一个请求中使用它(当然在同一页面中)。

参考:

http://anahorny.blogspot.in/2011/03/jmeter-handling-dynamic-viewstate.html

http://jmeter.apache.org/usermanual/component_reference.html#CSS/JQuery_Extractor