如何在安装脚本中引用全局 属性?
How to reference global property in setup script?
我正在尝试在测试用例中执行设置脚本并准备一些数据。
我在全局属性中定义了连接、用户和密码,请参阅:
现在我想引用全局 属性 而不是硬编码连接、用户和密码,这可能吗?
import groovy.sql.Sql
def jdbcDriver = "net.sourceforge.jtds.jdbc.Driver"
com.eviware.soapui.support.GroovyUtils.registerJdbcDriver(jdbcDriver)
def jdbcConnection = "jdbc:jtds:sqlserver://localhost/mydb"
def jdbcConnectionUser="dbuser"
def jdbcConnectionPassword="dbpswrd"
log.info jdbcConnection
//log.info ${#Global#JDBC_CONNECTION_STRING} <-- this doesn't work ??
//${#Global#JDBC_CONNECTION_STRING}, ${#Global#DBUSER}, ${#Global#DBPASS}
def db = [url:jdbcConnection,user:jdbcConnectionUser,password:jdbcConnectionPassword,driver:jdbcDriver]
try
{
def connection = Sql.newInstance(db.url, db.user, db.password, db.driver)
context.setProperty("dbconn",connection)
log.info "connected to the database"
}catch(Exception e){
log.error "Could not connect to the database"
}
if(context.dbconn)
{
def sql = context.dbconn
log.info "executing setup script"
sql.execute "update table_a set column_b = 'S' where column_c = 'something'"
sql.close()
}
我尝试使用以下语法引用全局 属性 但无济于事
${#Global#JDBC_CONNECTION_STRING}
我发现这很有效,在提问之前应该阅读文档。
def jdbcConnection = com.eviware.soapui.SoapUI.globalProperties.getPropertyValue( "JDBC_CONNECTION_STRING" )
def jdbcConnectionUser= com.eviware.soapui.SoapUI.globalProperties.getPropertyValue("DBUSER")
def jdbcConnectionPassword= com.eviware.soapui.SoapUI.globalProperties.getPropertyValue("DBPASS")
这里是 link 我找到答案和相关摘录的地方 :
def globalProperty = com.eviware.soapui.SoapUI.globalProperties.getPropertyValue( "MyProp" )
https://www.soapui.org/scripting-properties/tips-tricks.html#1-2-Get-and-Set-Settings
我正在尝试在测试用例中执行设置脚本并准备一些数据。
我在全局属性中定义了连接、用户和密码,请参阅:
现在我想引用全局 属性 而不是硬编码连接、用户和密码,这可能吗?
import groovy.sql.Sql
def jdbcDriver = "net.sourceforge.jtds.jdbc.Driver"
com.eviware.soapui.support.GroovyUtils.registerJdbcDriver(jdbcDriver)
def jdbcConnection = "jdbc:jtds:sqlserver://localhost/mydb"
def jdbcConnectionUser="dbuser"
def jdbcConnectionPassword="dbpswrd"
log.info jdbcConnection
//log.info ${#Global#JDBC_CONNECTION_STRING} <-- this doesn't work ??
//${#Global#JDBC_CONNECTION_STRING}, ${#Global#DBUSER}, ${#Global#DBPASS}
def db = [url:jdbcConnection,user:jdbcConnectionUser,password:jdbcConnectionPassword,driver:jdbcDriver]
try
{
def connection = Sql.newInstance(db.url, db.user, db.password, db.driver)
context.setProperty("dbconn",connection)
log.info "connected to the database"
}catch(Exception e){
log.error "Could not connect to the database"
}
if(context.dbconn)
{
def sql = context.dbconn
log.info "executing setup script"
sql.execute "update table_a set column_b = 'S' where column_c = 'something'"
sql.close()
}
我尝试使用以下语法引用全局 属性 但无济于事
${#Global#JDBC_CONNECTION_STRING}
我发现这很有效,在提问之前应该阅读文档。
def jdbcConnection = com.eviware.soapui.SoapUI.globalProperties.getPropertyValue( "JDBC_CONNECTION_STRING" )
def jdbcConnectionUser= com.eviware.soapui.SoapUI.globalProperties.getPropertyValue("DBUSER")
def jdbcConnectionPassword= com.eviware.soapui.SoapUI.globalProperties.getPropertyValue("DBPASS")
这里是 link 我找到答案和相关摘录的地方 :
def globalProperty = com.eviware.soapui.SoapUI.globalProperties.getPropertyValue( "MyProp" )
https://www.soapui.org/scripting-properties/tips-tricks.html#1-2-Get-and-Set-Settings