2013-01-04 65 views
2

我想用Jmeter强调测试我的jsf应用程序(使用Primefaces),并且我正面临一个奇怪的(但是预期的)问题。使用Jmeter + JSF + Primefaces

我使用的Jmeter设置很好,它使用正则表达式提取器来获取视图状态,JSESSIONID的HTTP URL重写修饰符,HTTP Cookie管理器和录制控制器。

记录的情况下,我想用的是去一个网页一些Primefaces 动态 tabviews和标签里面有一些是用来保存数据PF命令按钮。

现在的问题是这样的:当我把记录的ViewState替换为保存正则表达式提取的变量的页面时,带有Tabviews的页面无法导航到其他选项卡(并且无法渲染保存按钮),因此页面无法模拟保存。

我想到的是,当您更改动态tabview中的标签时,Primefaces会使用新的viewstate执行ajax请求,并且后续POST请求必须使用此视图状态来了解更改后的选项卡。

还有其他人以某种方式解决了这个问题吗?

感谢先进!

回答

0

在发送请求之前,我使用GET方法获得第一个屏幕,并使用正则表达式保留该ID。然后我会发送请求。对于每个打开的新屏幕都必须重新保存viewState覆盖前一个屏幕。

  • [简单位指示]
    • [HTML请求]开放视图E保存VIEWSTATE(GET方法)
      • [正则表达式提取]提取$ {myViewState}
    • [HTML请求]您的请求发送$ {myViewState}
    • [HTML请求] OTHER开放视图E保存VIEWSTATE(GET方法)
      • [正则表达式提取]提取$ {myViewState}
    • [HTML请求]您的其他请求发送$ {myViewState}

...为了打开每一个新的屏幕具有重新保存视图状态覆盖前一个。