使用 groovy 脚本在 SOAPUI 请求中设置参数的正确方法

Proper way of setting parameters in SOAPUI request using a groovy script

所以我对 java 很坚定,但我才刚刚开始学习 groovy 并使用 SOAPUI 和 groovy 测试 SOAP 请求。我正在尝试使用 groovy 脚本测试 SOAP 请求并设置 属性 值,该请求然后将其用作参数来测试 xml。现在,我不断在 SOAP XML:

中收到此错误
<soap:Body>
      <soap:Fault>
     <soap:Code>
        <soap:Value>soap:Sender</soap:Value>
     </soap:Code>
     <soap:Reason>
        <soap:Text xml:lang="en">Could not parse the XML stream.</soap:Text>
     </soap:Reason>
     <soap:Detail>
        <cause>javax.xml.stream.XMLStreamException: cvc-datatype-valid.1.2.1: '' is not a valid value for 'integer'.</cause>
     </soap:Detail>
  </soap:Fault>

但我可以看到 属性 值何时更新!我在我的测试用例的自定义属性下看到它。传递的值应该是整数,但设置 属性 值只能是字符串。这可能是问题所在吗?所有这些令人讨厌的部分是,当我从 属性 值选项卡复制值并直接粘贴到 XML 时,它起作用了。所以这告诉我我的价值没有被正确传递。如果我可以在自定义属性选项卡中看到该值而 XML 没有看到它,这应该意味着它没有被正确传递。在 XML 中,我尝试这样调用 属性 值:

${#RequestID}

也尝试过这个:

${#TestCaseName#RequestID}

但其中 none 有效。我还设置了 属性 值,如下所示:

testRunner.testCase.setPropertyValue(propertyValues[i],values[i])

和 运行 这样的测试:

def testStep = testRunner.testCase.getTestStepByName(testStepName)
def result = testStep.run(testRunner,context)

我做错了什么?请提供任何帮助。

错在我。在阅读文章时,他们说:

${#TestCase#ResquestID}

所以我假设我用错误的测试用例名称替换了 'TestCase'。我只是按原样通过它,它工作正常。