SoapUI数据源groovy脚本预加载数据

时间:2014-09-09 20:01:55

标签: groovy datasource soapui preload

我正在使用SoapUI Pro,数据来自groovy类型。

我脚本的第一部分:

def url = "http://www.xmlfiles.com/examples/plant_catalog.xml"
def slurper  = new XmlSlurper()
def content = slurper.parseText(url.toURL().text)
def allPlants = content.PLANT

我脚本的第二部分:

def row = testRunner.testCase.testSteps["groovyDS"].currentRow

if (row < allPlants.size()){
    result["zone"]=content.PLANT[row].ZONE
    result["light"]=content.PLANT[row].LIGHT
    result["price"]=content.PLANT[row].PRICE

}

目前所有脚本都从每行的开头运行。 我希望第一部分只运行一次,第二部分运行每行

1 个答案:

答案 0 :(得分:0)

您可以在

中扭曲脚本的第一部分
if(testRunner.testCase.testSteps["groovyDS"].currentRow == 1) {
    // your script
}

然而,这不会达到您的意图。在第二次传递时,allPlants.size()将出现错误,并显示空的poiter异常。