如何将相同的随机变量插入到多个soapui testcase请求中?

use*_*598 5 groovy soapui test-suite dynamic-variables

我可能会以完全错误的方式解决这个问题,但是如何将动态变量传递给SoapUI中相同测试套件中的一堆请求?

我的第一个测试步骤是Groovy脚本.我需要生成一个随机帐户名,然后在我的所有其他请求中使用它.还有大约20个其他请求.我最初认为我可以循环测试套件,但它不起作用.

这是我开始时的groovy脚本:

Random random = new Random()

def randUserAccount = "testAccount" 

int max = 100000
randnum = random.nextInt(max+10000)

randUserAccount += randnum

log.info "     Creating account: $randUserAccount"
Run Code Online (Sandbox Code Playgroud)

然后在每个请求步骤中,我有这样的事情:

<ns:CreateAccountRequest>
    <accountID>${randUserAccount}</accountID>
...
Run Code Online (Sandbox Code Playgroud)

要么

<ns:PurchaseRequest>
    <accountID>${randUserAccount}</accountID>
...
Run Code Online (Sandbox Code Playgroud)

当我实际发送它时,该帐户为空,当然这会在服务器端出错.我如何真正让变量在测试套件中的所有请求中持续存在?

提前感谢任何提示!

chr*_*ead 9

我相信你可以使用上下文.你绝对可以在测试中的请求之间使用它,但我也认为它可以在套件中的测试之间工作.

context.setProperty("randUserAccount", randUserAccount)
Run Code Online (Sandbox Code Playgroud)

然后使用您在实际请求中指定的语法.

如果这不起作用,请告诉我.您也可以使用"属性"来执行此操作,但这需要更多工作.