1

我有一个在 iPhone 模拟器中本地运行的客户端程序和用 Java 编写的本地服务器。客户端通过 HTTP 请求使用 JSON 与服务器对话。现在我正在尝试使用 JMeter 记录客户端会话 http 请求,以将它们用作负载测试服务器的基础。

问题是客户端请求不会抛出 JMeter 代理。客户端得到 501“方法未实现”(不是因为 https,我使用的是 http)。JMeter 日志中没有关于请求的任何内容,显然没有任何内容记录在 JMeter 中,并且请求没有到达服务器。

设置 JMeter 代理以记录来自浏览器的请求有详细描述的步骤,但我的客户端程序不是浏览器。尽管基于 HTTP 的 JSON 已被广泛采用,但我在网上找不到任何关于使用 JMeter 记录此类请求的信息。我知道我需要在客户端上做与浏览器在代理请求时所做的相同的事情,我发现我需要将 Host 标头设置为服务器的主机和端口,但这不起作用,我看不出是怎么回事它与客户端获取的 501 错误有关。

如果有人可以解释应该在客户端上做什么或如何配置 JMeter 以使其知道代理客户端请求的位置或链接任何解释该内容的手册,那将是很大的帮助。我已经寻找解决方案几个小时了,但没有运气。请帮忙。

4

1 回答 1

0

您可以在下面看到我的问题和答案:

使用 Jmeter 代理记录来自 iOS 模拟器的 HTTP 调用

简而言之:通过本教程,您可以记录来自 Android 设备的呼叫:http: //blazemeter.com/blog/load-testing-mobile-apps-made-easy

要使用 iPhone 做同样的事情,请执行以下步骤:

麦克配置:

系统首选项 -> 网络 -> 高级.. -> 代理 -> 检查“Web 代理 (HTTP) -> 在“Web 代理服务器”字段中,输入您的 IP ( http://www.wikihow.com/Find-Your- IP-Address-on-a-Mac),然后选择可用端口(我使用 8080)-> 确定 -> 应用

iPhone配置:

设置 -> WiFi -> 选择与你的 Mac 相同的 wifi -> 再次按下它以转到它的详细信息 -> 向下滚动 -> 在 HTTP 代理中,选择手动 -> 服务器 = 你之前找到的 mac IP -> 端口= 您选择的端口(可能是 8080)

现在您可以使用 jmeter 录制控制器开始录制所有“iPhone 网络输出”

于 2014-01-22T07:53:26.523 回答