我是Jmeter的新手,我想对使用JSF 1.2开发的我的Web应用程序进行负载测试,我阅读了很多关于它的文章,我在google上每个地方都有一个非常简单的例子,我们如何做到加载测试到一个简单的静态网站,如apache.jemter.org,但我找不到加载测试本地Web应用程序的过程 .
我有一些问题:
- 在我的应用程序第一个登录页面 . 传递用户名,密码和分支后,我将点击登录按钮,它将导航到主页 . 我的问题是
我想测试我的主页/jsf/pages/login/home.xhtml,现在我是否需要传递用户名,密码和分支作为参数或不需要 . 如果是,jmeter将如何查看我的代码并收集该信息,因为它是一个POST请求 .
-
还涉及一些 Cookies ,我该如何处理?
-
如果我想在我的应用程序中测试大约10个页面/进程,是否需要在JMeter中配置所有10个页面,包括执行该进程所需的参数?
请帮助我 .
2 回答
您必须从编写正则表达式开始提取jsfViewState
Regular Expression Extractor
<input type="hidden" name="javax\.faces\.ViewState" id="javax\.faces\.ViewState" value="([^"]+)".*/>
保存它的引用名称为
jsfViewState
POST - authenticate
使用类似的东西,对你自己的页面采用ID
Cookies
这很简单,只需在测试结束时添加HTTP Cookie管理器并将其设置为Compatibility / HC3CookieHandler . 您还应该在最后添加HTTP标头管理器,无需任何设置 .
Conclusions
在完成所有从使用断言,循环等进行适当测试开始之后 . 请记住,您必须通过POST请求传递
jsfViewState
. Chrome有一个很好的扩展名为BlazeMeter,它可以帮助您从网页中提取帖子信息 .您可以使用this detailed video tutorial实现登录验证 .
要处理cookie,请使用HTTP Cookie Manager . 只需将其添加到
您可以手动配置所有这些请求,或者使用HTTP代理HTTP(S) Test Script Recorder来记录您的案例 .