【问题标题】:JMeter : How to record HTTPS traffic?JMeter:如何记录 HTTPS 流量?
【发布时间】:2010-09-22 21:46:46
【问题描述】:

我使用的是 Apache JMeter 2.3,它现在支持代理服务器元素下的“尝试 HTTPS 欺骗”。

我已经在几个不同的服务器上尝试过,但都没有成功。 有没有人能够使用此设置从 HTTPS 源成功录制?

或者除非成功录制,任何人都可以分享解决方法吗?如果可用,我只是在服务器级别关闭了 HTTPS,但这并不总是可行的。想法?

【问题讨论】:

    标签: performance https automation jmeter load-testing


    【解决方案1】:
    1. 从 JMeter 3.0 开始,HTTP(S) Test Script Recorder 的默认端口是 8888

    2. 配置录制的最简单方法是使用JMeter Templates 功能。从 JMeter 的主菜单中选择:

      File -> Templates -> Recording -> Create
      

    1. 别忘了启动录音机:

      • 在JMeter = 4.0,忽略此步骤
      • 选择“HTTP(S) 测试脚本记录器”
      • 点击“开始”按钮

    1. 您将看到有关Root CA Certificate 的消息。点击确定:

    • 没关系,它通知您 JMeter 已创建一个根证书颁发机构,您需要将其导入浏览器才能正确记录 HTTPS 流量。

      1. 在 Firefox 中导入此根 CA 证书(位于 jmeter/bin 文件夹中),例如:

    1. 将浏览器配置为使用 JMeter 作为代理:

    现在好了。

    • 您可以导航到您的应用程序,采样器将在“线程组”元素下的“Recording Controller”下创建

    【讨论】:

      【解决方案2】:

      虽然 JMeter 代理已经能够记录 HTTPS 请求,但最近出现了一个创建 JMeter 脚本的 Chrome 扩展: https://chrome.google.com/webstore/detail/blazemeter-the-load-testi/mbopgmdnpcbohhpnfglgohlbhfongabi?hl=en

      它使用 BlazeMeter 作为中间人(云服务中的商业 JMeter),但您可以永久使用他们的免费服务,并且仍然使用该插件记录 JMX 脚本并将其本地下载到您自己的机器上,即使您从未使用过任何付费计划。

      【讨论】:

        【解决方案3】:

        我做的是:

        1. 使用我的网络服务器的 IP 地址(即http://2.2.2.2/login.html)访问我的网站
        2. 启动记录器并运行我的测试用例
        3. 停止录制
        4. 将 IP 地址的所有值替换为来自 HTTP 请求采样器的域名(即将 2.2.2.2 替换为 yoursite.com)
        5. 在 HTTP 请求采样器中将协议设置为 https

        如果您有多个页面,最简单的方法是创建一个 HTTP Request Defaults 项,并在那里设置您的域名和协议。

        仅供参考,我正在使用截至 2010 年 5 月 24 日的最新稳定版本:Jmeter 2.3.4 r785646。

        【讨论】:

          【解决方案4】:

          最新版本的 Jmeter (2.4) 现在支持 HTTPS 录制。高兴!

          更多详情: http://wiki.apache.org/jmeter/JMeterFAQ#Can_JMeter_record_HTTPS_requests_using_the_recording_proxy.3F

          【讨论】:

            【解决方案5】:

            除了 Bad boy 和 Https spoofing 之外,还有其他记录 HTTPS 的方法吗?

            是的——使用 JMeter 的夜间版本,例如版本 r922204。

            【讨论】:

            • Jmeter 2.4 版现在支持 HTTPS
            【解决方案6】:

            截至今天,Https 记录已在 Jmeter 2.9 的新版本中成功运行。我必须导入代理证书并使用 Firefox 才能使其正常工作。

            请参阅此链接了解更多信息 Https recording using Jmeter

            【讨论】:

              【解决方案7】:

              是的,我已将它与“尝试 HTTPS 欺骗”一起使用。事情很简单:

              1. (当然)开启 HTTPS 欺骗。
              2. 确保浏览器向Jmeter发送Http请求,以便Jmeter记录下来,然后将加密后的请求发送回服务器。因此,浏览器中的 URL 应该以 http://(而不是 https://)开头。详情请见my blog

              如果它适合你,请告诉我。

              【讨论】:

                【解决方案8】:

                我正在使用 Webscarab 来记录 https 和 ajax 对话。 它工作得很好。我用 Jmeter 的导出功能扩展了 Webscarab。 Bugzilla 48898。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多