【发布时间】:2020-08-06 21:39:45
【问题描述】:
我正在尝试解决 Jmeter 中的测试数据问题。你们中的任何人都可以看看下面的问题陈述并在这里提出建议吗?
要求:需要将CSV文件中的所有条目发送到'one'请求中的HTTP请求正文到端点。
CSV 文件示例:
"adsfas123wsf00000wqefqwe52145t10000",
"fdfrgvergq120947r0000dwsfqwaef237sadf",
"wfrqwef7865034r78tkahsefjh6985r7asfdaf",
"qefqwe52145t10000adsfas123wsf00000w",
"wsfqwaef237sadffdfrgvergq120947r0000d"
HTTP 请求正文: ["${data}"}]
当数据被替换时,我应该能够得到以下输出。
[
"adsfas123wsf00000wqefqwe52145t10000",
"fdfrgvergq120947r0000dwsfqwaef237sadf",
"wfrqwef7865034r78tkahsefjh6985r7asfdaf",
"qefqwe52145t10000adsfas123wsf00000w",
"wsfqwaef237sadffdfrgvergq120947r0000d"
]
问题陈述:当我使用 CSV 数据集配置时。文件,我无法将所有条目连接到一个请求正文中。我的理解是,CSV 数据集配置。该文件在这里不是正确的选择。
在 StackOverflow 中进行了一些搜索,并按照使用 JSR223 PreProcessor 的方法实现上述目标,链接为 How to send multiple json body using jmeter?。
按照上面的链接并尝试在提供的自定义代码下方添加。
def builder = new StringBuilder()
new File('/path/to/plans.csv').readLines().each { line ->
builder.append(new File(line).text).append(System.getProperty('line.separator'))
}
sampler.getArguments().removeAllArguments()
sampler.addNonEncodedArgument('', builder.toString(), '')
sampler.setPostBodyRaw(true)
运行时,我收到以下错误消息,
Caused by: java.io.FileNotFoundException,
"adsfas123wsf00000wqefqwe52145t10000",
"fdfrgvergq120947r0000dwsfqwaef237sadf",
"wfrqwef7865034r78tkahsefjh6985r7asfdaf",
"qefqwe52145t10000adsfas123wsf00000w",
"wsfqwaef237sadffdfrgvergq120947r0000d" (The filename, directory name, or volume label syntax is incorrect)
如果找不到文件,那么如何读取条目并将其显示在日志查看器中?
另外,如何将自定义代码的输出链接到请求正文?还是由自定义代码自己处理?
【问题讨论】:
标签: jmeter performance-testing load-testing