将Groovy脚本响应传输到SOAP UI 5.21中的属性

将Groovy脚本响应传输到SOAP UI 5.21中的属性,groovy,soapui,Groovy,Soapui,任何人都知道如何将groovyscript响应转移到SOAP UI的属性步骤中。我试图使用groovy脚本生成随机数,当我设计随机生成的数时,我如何将该值传递到soap ui中的属性,这些属性可以作为参数化值用于TCs TIA给你: 下面的groovy脚本代码片段将生成一个随机数,并将该值设置为测试用例级别的自定义属性,例如property\u NAME Groovy脚本 在同一个测试用例中,它可以在任何测试请求中作为${{TestCase}属性{u NAME} 编辑:基于您想要的更改,而上述原

任何人都知道如何将groovyscript响应转移到SOAP UI的属性步骤中。我试图使用groovy脚本生成随机数,当我设计随机生成的数时,我如何将该值传递到soap ui中的属性,这些属性可以作为参数化值用于TCs


TIA

给你:

下面的groovy脚本代码片段将生成一个随机数,并将该值设置为测试用例级别的自定义属性,例如
property\u NAME

Groovy脚本

在同一个测试用例中,它可以在任何测试请求中作为
${{TestCase}属性{u NAME}

编辑:基于您想要的更改,而上述原始代码仍然有效

def a = 9 
def AccountName = ''
(0..a).each {  AccountName = AccountName + new Random().nextInt(a) } 
context.testCase.setPropertyValue('Property_Name', AccountName.toString())
即使您使用下面的方法也可以实现同样的效果(只需将nextInt()中的值更新为第一个答案)

简单地说

使用下面的代码在上存储任何值

  • 测试用例级自定义属性:
testRunner.testCase.setPropertyValue(“propertyName”、“value”)

  • 测试套件级自定义属性:
testRunner.testCase.testSuite.setPropertyValue(“propertyName”,“value”)

  • 项目级自定义属性:
testRunner.testCase.testSuite.project.setPropertyValue(“propertyName”,“value”)

使用以下代码检查值是否在运行时成功存储:

  • 测试用例级别:
log.info testRunner.testCase.getPropertyValue(“propertyName”)

  • 测试套件级别:
log.info testRunner.testCase.testSuite.getPropertyValue(“propertyName”)

  • 项目级:
log.info testRunner.testCase.testSuite.project.getPropertyValue(“propertyName”)

使用下面的代码可以在任意位置使用属性值

  • 测试用例级别:
${#TestCase#propertyName}

  • 测试套件级别:
${#TestSuite#propertyName}

  • 项目级:
${#项目#propertyName}

  • 全球一级:
${#全局#propertyName}


请尽量用一种更容易理解的方式来表达你的问题。也许是示例代码?嗨,Rao,谢谢你的回复。。我正在使用下面的代码为(I=0;I<9;I++){random=new random()randomInteger=random.nextInt(a)AccountName=AccountName+randomInteger}log.info AccountName..---现在,我需要将获得的AccountName值传递到属性步骤中。。其中我给出了与AccountName相同的变量。由于我在使用RESTFUL,我需要在标题中传递这个随机生成的值…@Sandeep,你能用你的代码更新这个问题吗?@Sandeep,你可以使用你需要的所有代码,最后使用上面提到的代码行并替换最右边的值。在剩下的步骤中,使用上面提到的值
${{TestCase#PROPERTY_NAME}
,根据您的宝贵反馈,我在希望填充值的头中传递了${{TestCase#PROPERTY_NAME}。但是它使用的是值“${#TestCase#Property_Name}”,它没有使用正在生成的随机数:(:(不,这似乎不正确,或者可能有问题。您可以看到它的实际操作,请参阅附件(注意步骤的编号顺序),谢谢Shiyam.。在需要时一定会使用上面的代码:)
def a = 9 
def AccountName = ''
(0..a).each {  AccountName = AccountName + new Random().nextInt(a) } 
context.testCase.setPropertyValue('Property_Name', AccountName.toString())
context.testCase.setPropertyValue('PROPERTY_NAME', (Math.abs(new Random().nextInt(999999998)) + 1).toString())