我是 jmeter 的新手,我在 Eclipse Juno 中有 Spring Web 应用程序项目,服务器是 tomcat 服务器。我想使用 JMeter 对应用程序进行一些性能测试。我在 google 中进行了一些搜索并找到了简单的测试计划,但在我的项目中,我们有登录屏幕,它重定向到其他屏幕。如何将我的登录屏幕重定向到其他页面?任何参考都会有所帮助。
2 回答
您应该注意两个方面:
1.根据你的业务逻辑创建一个测试套件。你可以通过
- 使用 HTTP 采样器构建手动请求
- 按照 Matthias 的建议,使用 JMeter HTTP 代理记录您的流程
- 使用Google Chrome 扩展程序在浏览器中记录测试脚本
任何方法都应该产生一些或多或少合理的请求。您可能希望通过考虑添加以下内容使您的脚本更像真正的浏览器:
- HTTP Header Manager - 模拟用户代理
- HTTP 缓存管理器 - 模拟浏览器缓存
- 检索 HTTP Sampler 的所有嵌入资源参数并结合使用并发池大小模拟浏览器对图像、css 和 javascript 文件的异步调用
HTTP Cookie 管理器 - 处理 cookie
- 处理登录和会话
实现这一点的最简单方法是将HTTP Cookie 管理器添加到线程组。确保您设置了CookieManager.save.cookies=true属性。该属性位于 JMeter 安装的 /bin 文件夹下的jmeter.properties文件中,默认为“false”。启用它后,您将获得更“真实”的行为,并且能够将 cookie 作为前缀为 COOKIE_ 的 JMeter 变量访问
JMeter 变量可以通过 Debug Sampler + View Results Tree listener(这是调试测试的最佳方式)查看,并在测试的任何部分中作为 ${VARIABLENAME} 引用
查看JMeter的教程/文档。
您不应该手动设置整个测试。如果您有一个复杂的 Web 应用程序,尤其是使用 Spring 或 Seam 等框架的应用程序,您应该记录通过您的 Web 应用程序的流程。JMeter 提供了一个代理。您在 JMeter 中启用此代理并在浏览器中对其进行配置(更多信息请参见上面的链接文档)。
完成录制后,您必须处理这些变量值,例如 jSessionId、userId 和所有这些,并在您的请求中定义一些变量/重写。
对于性能测试,您通常会添加随机时序、循环和流程的并行执行。这一切都取决于您的需求,因此请尝试并根据特定需求回来。