【问题标题】:Cannot capture jmeter traffic in fiddler无法在提琴手中捕获 jmeter 流量
【发布时间】:2023-11-02 07:55:01
【问题描述】:

我创建了一个 JMeter 记录。但是当我开始测试时, 我在 Fiddler 中没有看到任何请求。我改变了 我在 JMeter 中使用的 Fiddler 中的端口号为 8080。

步骤:

  1. 创建线程组
  2. 在线程组中添加Http Request并输入URL
  3. 将录制控制器添加到线程组
  4. 添加 HTTP(S) 测试脚本记录器
  5. 将 Firefox 设置更改为 localhost 代理和 8080 端口
  6. 记录测试
  7. 然后启动 Fiddler 并开始测试

我不确定 JMeter 是否真的成功运行了测试。 但是,当我显示用户数为 10 并且没有错误时 运行测试。我有什么遗漏的吗?

【问题讨论】:

    标签: jmeter fiddler


    【解决方案1】:

    首先,将 Fiddler 的端口改回原来的8888

    接下来,将 JMeter 的代理设置更改为指向端口 8888 上的 127.0.0.1 作为其代理设置。

    然后,运行您的测试。

    【讨论】:

    • 谢谢。它适用于 HTTP 请求采样器。但是没有这样的选项可以为 Web 服务的 SOAP/XML 测试采样器提供代理设置。通过 JMeter 测试我的 Web 服务时,我无法捕获 fiddler 中的流量。
    • JMeter 允许您指定代理 *.com/questions/16669947/…,您通常还可以为 Java VM 本身设置代理设置。
    • 谢谢埃里克。但我通过在 SOAP/XML 采样器下添加“HTTP 请求默认值”配置元素并在“HTTP 请求默认值”配置元素中指定代理设置(IP:127.0.0.1,端口:8888)使其工作。现在 fiddler 也可以在测试 Web 服务时捕获来自 JMeter 的流量。
    • 我可以确认这适用于 HTTPS 请求。获取认证令牌的请求也可以正常查看。 “查看结果树”与 Fiddler 对齐。
    【解决方案2】:

    要通过 Fiddler 记录来自 JMeter 的流量,请使用下一个设置 重要

    • 我用的是 JMeter 5.0
    • 重新检查您的 Fiddler 列表端口是否设置为 8888

    用户界面模式

    1. 创建线程组 --> HTTP 请求
    2. 进入高级填写“服务器名称或IP:”= 127.0.0.1,“端口号:”= 8888

    非 UI 模式

    1. 添加到您的命令 -H 127.0.0.1 用于代理主机
    2. -P 8888 用于代理端口
    3. 示例: C:\jmeter5.0\bin>jmeter -n -t C:\example.jmx -l C:\scriptresults.jtl -H 127.0.0.1 -P 8888

    【讨论】:

      【解决方案3】:

      我不建议使用 fiddler,因为 JMeter 现在有自己的录音机了。

      要记录一系列请求,您需要按照以下步骤操作。

      1. 打开 JMeter
      2. 右键单击“测试计划”并导航到“添加”菜单下的“线程(用户)”,然后选择“线程组”
      3. 现在,右键单击“线程组”并导航到“添加”菜单下的“登录控制器”,然后选择“录制控制器”
      4. 现在再次右键单击“测试计划”,然后导航到“添加”菜单下的“非测试元素”,然后单击“HTTP(S) 测试脚本记录器”
      5. 现在不做任何更改,点击右侧部分的开始按钮,然后移动到您的浏览器。
      6. 现在配置您的浏览器以使用代理 主机:本地主机 端口:8888(如果您在 JMeter 中更改了相同的端口,则可以更改此端口,但请确保两者具有相同的值)
      7. 现在像往常一样浏览互联网。

      上述过程将使您能够轻松记录流量。 请记住,这仅适用于没有 HTTPS 的网站。

      如果您感到困惑,可以参考此视频:https://youtu.be/zXHs5Ts6JBc

      【讨论】:

        最近更新 更多