GROOVYScript 和 Soapui:存储由单个查询检索到的列数据
GROOVYScript & Soapui : Store columns data retrieved by a single query
我正在尝试使用
存储在我的局部变量中
testRunner.testCase.setPropertyValue("FirstName", FirstName.toString());
和
testRunner.testCase.setPropertyValue("SecondName", SecondName.toString());
通过像
这样的简单查询检索到的数据
select firstName, secondName
from users where c_fis='TRRKLA36C47I298D'
每列都有一个脚本循环
def query = testRunner.testCase.getPropertyValue( "query" )
def rowNum = 1
sql.eachRow(query) { row ->
testRunner.testCase.setPropertyValue("row"+rowNum, row.inspect());
rowNum++
}
sql.close()
但是我无法实现我的 gol,因为脚本只在第一行存储结果集。
我想将从每个列中检索到的值存储在每个 "rows" 中。
例子
select firstName, secondName
from users where c_fis='TRRKLA36C47I298D'
套
Row1 = "John"
Row2 = "Smith"
您可以尝试遍历各列,如下所示:
def DBlist = sql.firstRow(query)
def columnNum = 1
DBlist.each {
testRunner.testCase.setPropertyValue("colonna"+columnNum,
it.getValue().toString())
columnNum++
}
请注意,此脚本仅适用于一行,如果要在测试用例中传递它们,则需要创建尽可能多的列。
我正在尝试使用
存储在我的局部变量中testRunner.testCase.setPropertyValue("FirstName", FirstName.toString());
和
testRunner.testCase.setPropertyValue("SecondName", SecondName.toString());
通过像
这样的简单查询检索到的数据select firstName, secondName
from users where c_fis='TRRKLA36C47I298D'
每列都有一个脚本循环
def query = testRunner.testCase.getPropertyValue( "query" )
def rowNum = 1
sql.eachRow(query) { row ->
testRunner.testCase.setPropertyValue("row"+rowNum, row.inspect());
rowNum++
}
sql.close()
但是我无法实现我的 gol,因为脚本只在第一行存储结果集。
我想将从每个列中检索到的值存储在每个 "rows" 中。
例子
select firstName, secondName
from users where c_fis='TRRKLA36C47I298D'
套
Row1 = "John"
Row2 = "Smith"
您可以尝试遍历各列,如下所示:
def DBlist = sql.firstRow(query)
def columnNum = 1
DBlist.each {
testRunner.testCase.setPropertyValue("colonna"+columnNum,
it.getValue().toString())
columnNum++
}
请注意,此脚本仅适用于一行,如果要在测试用例中传递它们,则需要创建尽可能多的列。