【问题标题】:How to change Content Length in Jmeter如何在 Jmeter 中更改内容长度
【发布时间】:2021-03-23 17:17:03
【问题描述】:

我在 Jmeter 中的脚本非常关键,我需要在 Azure 存储上上传一个文件和一个微服务来分析 blob 数据以进一步处理,但它会查找特定大小,例如 8081920 字节。我可以成功地在 Azure 存储上上传相同大小的文件,但服务返回大小不匹配。

如果我使用 Postman 上传相同的文件,服务能够成功处理图像。下面是 Postman 请求的 Header

x-ms-blob-type: BlockBlob 内容类型:图像/原始 用户代理:PostmanRuntime/7.26.10 接受:/ 邮递员令牌:b9384ac9-7fbe-4ab8-834b-aef0d8114588 主机:xxxxxxx.blob.xxxxxx.windows.net 接受编码:gzip、deflate、br 连接:保持活动 内容长度:8081920

Jmeter 请求标头: 连接:保持活动 内容类型:图像/原始 接受编码:gzip、deflate、br 接受:/ x-ms-blob 类型:BlockBlob 内容长度:8082155 主机:xxxxxxx.blob.xxxxxx.windows.net 用户代理:PostmanRuntime/7.26.10

知道如何从 jmeter 发送额外 235 字节但 Postman 不发送的地方解决此问题。

谢谢, 阿克沙特

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    Content-Length 标头由两个工具自动计算为:

    sum of request headers (bytes) + request body (bytes)
    

    鉴于您没有提供正文,我们无法说明不一致之处,据我所知,Postman 发送 Postman-Token 而 JMeter 没有,因此 JMeter 的 Content-Length 应该更小

    在多部分文件上传的情况下,差异可能是由不同的boundaries引起的,但它不应该对图像处理产生任何影响。

    在任何情况下,您都可以使用 Postman 成功上传文件,而使用 JMeter 无法做到这一点 - 您可以使用 JMeter 的 HTTP(S) Test Script Recorder 记录来自 Postman 的请求 - 这样您就会确信请求正是相同的。只需确保将您上传的文件复制到 JMeter 安装的“bin”文件夹中,这样 JMeter 就能正确捕获请求。

    更多信息:How to Convert Your Postman API Tests to JMeter for Scaling

    【讨论】:

    • 感谢@Dmitri,我尝试记录使用 HTTP 测试脚本,但是当涉及到 AUT 应用程序 Jmeter 的上传功能时,我尝试了 5.1、5.2 和 5.4 版本,它是一样的上吊。我知道在录制过程中,日志会保存在recording.xml 中,即使我导入,工具也会再次挂起。使用 Jmeter 我可以成功上传,但上传后的服务会分析返回大小不匹配的大小,但相同的文件名(具有相同大小)在邮递员上工作正常。我完全不知道该怎么做,请帮忙
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-14
    • 2017-02-07
    • 1970-01-01
    相关资源
    最近更新 更多