JMeter:需要从CSV文件发送一个随机值数组

2eafrhcq  于 2023-10-20  发布在  其他
关注(0)|答案(1)|浏览(155)

我有一个CSV文件,其中每行都有感兴趣的主题:
List of entries in a CSV file
我想从CSV文件中选择任意4个随机值,并将其作为字符串数组传递给请求主体,以及一些其他参数,如下所示:
{"interest":["Mobility Testing", "BI Modernization, "Data Monetization", "Big Data Testing"],"user_id":"8aafa3be-c19b-4355-88cb-1c068463790d","user_id_type":"wid"}
如何做到这一点?

tv6aics1

tv6aics11#

您可以使用JSR223 PreProcessor和以下代码生成请求主体:

def entries = new HashSet()

def linesFromCSV = new File('/path/to/your/file.csv').readLines()

while (entries.size() < 4) {
    entries.add(linesFromCSV.get(org.apache.commons.lang3.RandomUtils.nextInt(0, linesFromCSV.size())))
}

def payload = new groovy.json.JsonBuilder([interest: entries]).toPrettyString()

vars.put('payload', payload)

生成的请求体可以在需要时引用为${payload}
更多信息请参阅:

相关问题