jmeter关于性能和负载测试

Posted

技术标签:

【中文标题】jmeter关于性能和负载测试【英文标题】:jmeter regarding performance and load testing 【发布时间】:2012-02-17 12:18:36 【问题描述】:

让我描述一下我一直面临的问题。

我想在我们的内部网站上进行性能和负载测试。它具有登录和其他功能。

我面临的问题是,当我使用 http 采样器达到 12 个或任意数量的请求时,我会从所有 12 个请求中得到相同的响应。但实际情况是网页针对不同的页面显示不同的数据。

我使用 firebug 进行了检查,使用来自请求的正确响应,那里一切正常,但是当我使用 jmeter 时,我对每个请求都使用相同的响应。

如果有人遇到过同样的问题,请告诉我,我在配置脚本时做错了什么。

【问题讨论】:

【参考方案1】:

    尝试将HTTP Cookie Manager 添加到您的测试计划到根(测试计划)节点或线程组节点。 根据jmeter documentation:

    最后一个元素是 HTTP Cookie 管理器。 Cookie 管理器应该是 添加到所有 Web 测试 - 否则 JMeter 将忽略 cookie。经过 在线程组级别添加它,我们确保所有 HTTP 请求 将共享相同的 cookie。

    确保动态的参数值不是硬编码的(例如,在记录 jmeter 脚本之后):HTTP 请求中没有硬编码的 JSessionID 值,例如..

    确保您不会错过 HTTP 请求中的任何必要参数。

    JMeter 不处理嵌入在 HTML 页面中的 Javascript 或小程序。 您的问题可能是由此功能引起的。 根据jmeter documentation:

    JMeter 不处理嵌入在 html 页面中的 javascript 或小程序。

    JMeter可以下载相关资源(一些嵌入式资源 如果设置了正确的选项,则会自动下载),但它 不处理 HTML 并执行任何 Javascript 函数。

    如果页面使用 Javascript 构建 URL 或提交表单,您 可以使用代理记录工具来创建必要的采样器。 如果这是不可能的,那么可以手动检查代码 需要确定 Javascript 正在做什么。

我还建议您在进一步的脚本编写活动之前先查看 Jmeter 参考 - 这可以防止一些错误和挫折。

至少这些:

Building a Test Plan Elements of a Test Plan Building a Web Test Plan Building an Advanced Web Test Plan

希望这会有所帮助。

【讨论】:

嗨,Alies 感谢您的快速回复。第 1 点到第 3 点我确信我没有错误,因为我正在使用 bad boy 工具录制脚本并将脚本导出到 jmeter,因此它会自动配置所有内容。但是第 4 点我仍在研究它可能看起来合乎逻辑。【参考方案2】:

我建议 - 使用 Jmeter 的正则表达式。您可以使用 RegEx 解决此问题。使用正则表达式发布,使用“查看结果树”侦听器来检查您是否为每个线程获得了恰当的响应。

您还可以使用Blazemeter's listener 分析您的结果,让您更深入地了解您的测试。

【讨论】:

以上是关于jmeter关于性能和负载测试的主要内容,如果未能解决你的问题,请参考以下文章

性能测试——JMeter脚本录制和HTTP负载测试

Jmeter-什么是性能测试 负载测试 压力测试

Jmeter性能测试2-性能测试常见分类

全网火爆,Jmeter性能场景设计 - 压力负载测试性能场景+分析性能指标

学习使用Jmeter做压力测试--压力测试基本概念

Jmeter原理和安装