使用 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'。我只是按原样通过它,它工作正常。
所以我对 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'。我只是按原样通过它,它工作正常。