19

我们正在尝试使用 JMeter 进行性能测试。

我使用了 jmeter 中使用 HTTP 代理服务器提供的示例指南,但我的记录控制器没有记录任何请求。

经过大量研究,这就是完整的场景。

我正在使用公司代理服务器访问外部站点。因此,经过一番研究,我知道我需要通过命令行提供所有信息来启动我的 jmeter。例如

jmeter -H 129.198.1.1 -P 8000 -u someusername -a someuserpassword -N localhost

现在我明白了,我不需要混淆这些设置。默认情况下,JMETER 使用自己的内部代理服务器。

我们需要配置我们的浏览器,以便它使用 jmeter 代理设置,我就是这样做的。

我添加了一个线程组、一个记录控制器、带有 url 包括模式和排除模式的 http 代理服务器,但它仍然无法记录任何脚本。

我究竟做错了什么?有人可以帮我吗?

我逐步使用了与 JMETER 文档捆绑在一起的文档 JMeter 代理。这是我的配置

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

4

7 回答 7

20

删除所有内容:

  • 要包含的 URL 模式

  • 要排除的 URL 模式

单击添加建议的排除项

它应该工作。

目前您的包含模式是错误的:

包含和排除模式被视为正则表达式(使用 Jakarta ORO)。它们将与每个浏览器请求的主机名、端口(实际或隐含)路径和查询(如果有)进行匹配。如果您正在浏览的 URL 是“ http://jmeter.apache.org/jmeter/index.html?username=xxxx ”,那么正则表达式将针对字符串进行测试:“jmeter.apache.org:80/jmeter /index.html?username=xxxx" 。因此,如果您想包含所有 .html 文件,您的正则表达式可能类似于:“. .html(\?. )?” - 或“.*.html”,如果您知道没有查询字符串,或者您只想要没有查询字符串的 html 页面。

有关如何记录,请参阅此参考文档:

如果你想正确地学习 jmeter,这本书会对你有所帮助。

于 2013-06-16T12:05:01.780 回答
6

在为代理配置 Firefox 并在 localhost 上录制时,我遇到了类似的问题。在 Firefox -> 工具 -> 选项 -> 高级 -> 网络 -> 设置中,在 No Proxy for 中有一个 localhost 条目。

我删除了它并且它有效在此处输入图像描述

于 2015-02-25T04:37:17.290 回答
3

我也遇到过类似的问题,请看下文。由于 JMETER 代理在 localhost 上运行,请取消选中下面的复选框。

IE_BY_PASS_PROXY_FOR_LOCAL_ADDRESS

于 2014-01-12T06:33:46.623 回答
1

安装Jmeter Chrome 扩展程序,它记录 HTTPS 协议没有任何问题。

于 2013-09-20T06:52:15.680 回答
1

您在 Workbench 下的“HTTP 代理服务器”中编写了“要包含的 URL 模式”和“要排除的 URL 模式”的语法/格式错误。语法/格式应如下所示:

.*\.jsp
.*\.jsf
.*\.html

但是,您已经编写了正斜杠(/)。如.*/.jsp。在更正语法后,它应该被记录下来。

于 2013-12-26T09:56:02.947 回答
0

必须先启动 Jmeter 代理服务器,然后 Firefox 才能连接到它。JMeter 有自己的代理服务器,因此必须在 FF 允许访问网站之前按下 Recording Controller 的“开始”按钮。

于 2016-03-29T23:15:17.260 回答
0

据我了解这个问题。问题并不像看起来那样,JMeter 和浏览器能够相互交互。但问题是如何确保 JMeter 能够使用代理。

现在为此,有很多出路。我将从最简单的开始。在浏览器中安装 Blazemeter Extension 并开始在其中录制。完成后,它将为您提供一个 .jmx 文件

第二个是配置 JMeter 以访问代理。该命令现在有所改变。

jmeter -E https -H my.proxy.server -P 8000 -u username -a password -N localhost

请注意,您需要更改以下值: my.proxy.server 8000 用户名密码

如果您不使用用户名和密码连接到代理,只需省略 -u 用户名 -a 密码部分。

参考:https ://jmeter.apache.org/usermanual/get-started.html#proxy_server

这将用于记录脚本。

现在,运行脚本。这可能无法按预期执行。

在这种情况下,您在 HTTP 请求采样器中有一个高级选项卡,前往那里并在那里提供您的代理服务器详细信息。

于 2020-08-12T13:21:53.270 回答