【问题标题】:How to change content of Post Body in JMeter HTTP Request如何在 JMeter HTTP 请求中更改 Post Body 的内容
【发布时间】:2013-09-17 20:12:28
【问题描述】:

请原谅我的无知,因为我是一个 jmeter 菜鸟。我的 web 服务接受 JSON 对象,因此我能够编写一个基本测试,在该测试中,我在 http 请求的“Post Body”部分创建一个带有 JSON 对象的 HTTP 请求。

无论如何,我想做的是让 HTTP 请求从 csv 文件或其他一些输入机制中选择不同的 JSON 对象,以便我可以随机化负载测试期间正在运行的查询类型。有没有办法做到这一点?最接近的可能是使用变量(用户手册中的第 4.11 节),但我感觉这不是变量的使用方式。

我理论化的第二种方法(虽然我还没有尝试过,因为我认为上面的方法更简单)是创建一个 HTTP 请求默认 obj,其中包含一堆带有不同 JSON 对象的 HTTP 请求,然后使用一个随机控制器,每次通过时随机通过我的多个 HTTP 请求。

如果有第三种方法,我很乐意学习如何使用这个工具。我将继续阅读并可能尝试上面的 B 计划。提前感谢您能给我的任何帮助。


更新:所以我尝试了第二种方法,它似乎有效。我有 3 个不同的 HTTP 请求,每个请求被命中的次数因运行而异。我仍然邀请社区的答案,因为我想看看专业人士如何解决与我类似的问题。

【问题讨论】:

    标签: json httprequest jmeter load-testing


    【解决方案1】:

    您已经通过说“csv 文件或”自己回答了部分问题。以下是具体内容。

    您必须在测试计划中使用 CSV data set config 才能从 CSV 读取数据。在您的帖子正文中,使用从 CSV 读取的变量。

    这里是 a screen cast showing how to use csv data set config.

    【讨论】:

    • 感谢链接。我仍然不确定如何从您的视频中使用 CSV。我正在使用 JMeter 2.9。在我的 CSV 文件中,每一行都是一个 JSON obj。我没有像您在视频中那样在一行上有单独的值。我复制了您的视频,并为 CSV 文件中的值设置了一个 var 名称。然后我将 ${var} 放入 HTTP 请求“发布正文”中。但是,当我运行测试时,它声称存在错误。当我将整个 JSON obj 粘贴到“Post Body”中时,它就成功了。 CSV 数据集配置仅用于“参数”还是我也可以将其用于“帖子正文”?如果有帮助,我可以将更多信息粘贴到问题中。
    • 本教程不是您问题的确切答案。不要使用Post Body 中的硬编码 JSON,而是使用 CSV 数据集配置中定义的变量。
    猜你喜欢
    • 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
    相关资源
    最近更新 更多