我正在尝试使用 JMeter 复制文件,
场景:
- 加载 JSON 文件。例如,{"name":"John","age":"$age_place"}
- 修改一个属性 - age_place 从 1 到 20
- 将每个修改后的迭代保存到单独的文件中
我曾尝试使用简单数据编写器来做到这一点,但没有奏效。
我正在尝试使用 JMeter 复制文件,
场景:
我曾尝试使用简单数据编写器来做到这一点,但没有奏效。
如果您需要生成 20 个不同年龄的文件,您可以使用任何JSR223 Test Elements来完成。示例Groovy代码如下所示:
def json = new groovy.json.JsonSlurper().parseText("{\"name\":\"John\",\"age\":\"\"}")
def builder = new groovy.json.JsonBuilder(json)
1.upto(20, {
builder.content.age= "${it}"
def writer = new File('file' + "${it}" + ".json").newWriter()
writer << builder.toPrettyString()
writer.close()
})
执行测试后,它将在 JMeter 安装的“bin”文件夹中创建以下文件:
file1.json
- 随着年龄1
file2.json
- 随着年龄2
file20.json
- 随着年龄20
参考:
你有 JSR223 Elements 作为采样器或预处理器,你可以添加强大的脚本,
最简单的方法是age_place
用您的值替换,例如如果保存在变量中age_place
:
f = new FileOutputStream("c:\\temp\\template.json", false);
p = new PrintStream(f);
this.interpreter.setOut(p);
print("{\"name\":\"John\",\"age\":\"age_place\"}".replaceAll("age_place", vars.get("age_place")));
f.close();