我遇到了一些groovy代码和SoapUI
的问题。 Groovy
代码可以正常运行一段时间,有时则不运行。
示例:我编写了一段groovy脚本,用于设置SoapUI的项目属性和另一段groovy脚本,以启用TestSuite和TestCase(如果禁用)。
但问题在这里,它的工作非常不一致。
//To set Project Property
//Get Project
def getProject = testRunner.testCase.testSuite.project
//Set Project IP Property in Project level
def IP = context.expand( '${Properties#IP}' )
getProject.setPropertyValue( "Project_IP", "$IP")
//To enable TestSuite if its disable
//get Project
def getProject = context.testCase.testSuite.project
//get Test Suite Name
def TestSuite_Name = context.expand( '${DataSource#TestSuite_Name}' )
log.info TestSuite_Name
//Enable the TestSuite
getProject.getTestStepByName(TestSuite_Name).setDisabled(false)
答案 0 :(得分:0)
我不知道为什么它有时会工作但是因为缺少了#34;#"它有时不起作用。面向soapUI变量
\b
以下行即可。无需添加"#"这里
def IP = context.expand( '${#Properties#IP}' )
有关更多语法,请参阅SoapUI Scripting Page
答案 1 :(得分:0)
看起来你对这些用法感到困惑,这是来自SoapUI
的正确预期行为。
#
应在属性扩展中加前缀。
在您的情况下,${#Project#PropertyName}
#
时, Test Step Name
不需要在属性扩展中添加前缀。
正如您在其他用法中指出的那样,DataSource
是测试步骤名称,而不是任何级别的属性,因此不需要#
。
因此,${DataSource#Whatever}
希望这澄清。