使用SOAPUI将自定义属性从环境传递到JSON

时间:2017-01-08 22:04:16

标签: json soapui ready-api

我正在使用Ready! API尝试将自定义变量从环境传递到Soap UI NG测试用例之一,但是当我设置属性扩展时,没有传递任何值。

我有以下JSON结构:

{
    "password":"password",
    "orgName":"${#Env#orgname}",
    "email":"someuser@notrealdomain.com"
}

当我运行这个案例时,orgname会以空字符串的形式返回,就像这样

{
    "password":"password",
    "orgName":"",
    "email":"someuser@someorg.com"
}

想想也许我不得不将变量移到TestSuite中,我在TestSuite中添加了一个自定义属性并进行了相同的扩展,但同样,没有传递任何值。

这可能吗?或者是否有另一种传递环境自定义属性的方法?

更新

答案相对简单,我可能在文档中遗漏了它。

将自定义属性添加到环境时,它将成为项目的自定义属性。因此,如果您需要获取Environment Custom Property值,只需执行${#Project#<env_cust_prop>}

2 个答案:

答案 0 :(得分:1)

答案相对简单,我可能在文档中错过了它。

将自定义属性添加到环境时,它将成为项目的自定义属性。因此,如果您需要获取Environment Custom Property值,只需执行${#Project#<env_cust_prop>}

答案 1 :(得分:0)

此脚本获取环境变量。

def env = System.getenv()
//Print all the environment variables.

env.each{
log.info it
}
// You can also access the specific variable, say 'username', as show below
String user= env['USERNAME']
//[Code from http://www.mytechtoday.com/2009/01/read-environment-variables-with-groovy.html]

您需要在testCase中添加活动类型属性 enter image description here

为测试用例创建自定义变量,并在before脚本中添加此行。

testRunner.testCase.testSteps['PROPERTIES_NAME'].setPropertyValue('VARIABLE_NAME',VARIABLE_VALUE);