我有一個要測試的服務API,它返回一些不同國家的各種參數的默認值。國家代碼是服務的模板參數。即JMeter爲forEach控制器填充用戶定義的變量
http://${hostname}:${port}/country/${countryCode}
一個國家或地區代碼,我可以使用的是「ALL」(其他爲「IN」,「美國」,「英國」,「MX」 ...),這將返回所有受API支持的國家和響應也將包含國家代碼。因此,我可以填充我需要測試的所有國家/地區代碼。 Groovy的素文字
import groovy.json.JsonSlurper
def slurper = new JsonSlurper()
def result = slurper.parseText(prev.getResponseDataAsString())
assert prev.isResponseCodeOK()
def countries = result.country
assert countries instanceof List // Should get as [IN, US, UK, MX] for e.g.
def numOfCountries = countries.size()
我試圖使用變量「國家」,這是所有我需要測試在ForEachController服務的國家名單。爲此,我將需要格式中的UDV名稱
country_1 , country_2 , country_3 ...
如何使用該名稱格式將列表元素保存到UDV中。問題是我不知道或者不能假設有多少國家被支持,所以UDV不能提前命名。
可以這樣做嗎?我是否正確地解決問題?歡迎任何不同的方法。
感謝