[英]JMeter: Need to send all values in a CSV File to different variables in a request body, based on some criteria
[英]JMeter - Cannot Get Dynamics CSV Values Into My JsonBuilder Request Body
我昨天問了一個關於在 JMeter 上使用預處理器創建動態請求正文的問題。 感謝 Dmitri T,我幾乎得到了我想要的東西。
這里的老問題: JMeter 創建一個預處理器,它將根據用戶定義的變量生成請求正文
但是現在,我無法從我的 CSV 文件中獲取動態值到請求正文中。
MY CSV 文件示例數據:
Reading CSV successfully finished, 20 records found:
${id} = 1000011
${email} = a1000011@smartmessage.com
------------
${id} = 1000012
${email} = a1000012@smartmessage.com
------------
${id} = 1000013
${email} = a1000013@smartmessage.com
我的生成請求正文的預處理器:
import groovy.json.JsonBuilder;
def payload = [:]
def X = 10 // read user input here somehow
payload.put('message_job_id', '28b0a005-9ef1-475c-b33c-ade900f19e4c')
payload.put('campaign_group', 'Entegrasyon')
payload.put('template_id', 'cf585c8c-c675-40d2-b88a-ade900c898d5')
def recipient_list = []
1.upto(X, { x ->
def recipient = [:]
recipient.put('customer_id', vars.get('id') + x)
def target = [:]
def address = ['address': vars.get('email' + x)]
target.put('target', address)
recipient.put('target', target)
recipient_list.add(recipient)
})
payload.put('recipient_list', recipient_list)
vars.put('payload', new groovy.json.JsonBuilder(payload).toPrettyString())
我在查看結果樹中生成的請求正文:
{
"message_job_id": "28b0a005-9ef1-475c-b33c-ade900f19e4c",
"campaign_group": "Entegrasyon",
"template_id": "cf585c8c-c675-40d2-b88a-ade900c898d5",
"recipient_list": [
{
"customer_id": "10000111",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000112",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000113",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000114",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000115",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000116",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000117",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000118",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "10000119",
"target": {
"target": {
"address": null
}
}
},
{
"customer_id": "100001110",
"target": {
"target": {
"address": null
}
}
}
]
}
如您所見,地址鍵始終具有 null 值,但我想用 CSV 文件中的 email 變量填充此鍵。
如果您需要從 CSV 文件構建請求正文並在“一次”中從多行發送數據 - 您將無法使用CSV 數據集配置和派生數據來實現此目的,因為 ZCC8D68C551C4A9A6D5313E07DE 為每次迭代讀取下一行數據集 4DE每個用戶的。
如果您需要在單個迭代的范圍內讀取多行 - 您將需要切換到__CSVRead() function或直接在 Z2D19C57FDD4FDC2710C971F69EE8 中從 CSV 文件中讀取數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.