我正在使用免费的(非专业版)SoapUI 5.0,并且我在测试套件中有一个属性列表。 然后我有许多测试步骤,每个测试步骤都与测试套件属性同名。
我正在尝试在测试步骤属性中编写 Groovy 脚本以检索具有相同名称的测试套件属性的值。
例如:
- 测试套件的属性 colour_red 的值为 12345。
- 测试套件中有一个测试用例,测试步骤也称为 colour_red。
- colour_red 测试步骤中有一个属性“信息”。
- 我正在尝试将“信息”的属性值设为测试套件 属性 colour_red 值为 12345。
到目前为止,“信息”属性值中的内容:
${=new GroovyShell().evaluate(testRunner.testCase.testSuite.project.getPropertyValue(context.getCurrentStep().getLabel()))}
我不确定我是否需要 new GroovyShell().evaluate 位,但没有它仍然无法工作。我不能确切地说出正在拾取的是什么,但它不是具有相同名称的测试套件属性的值。
据我所知,脚本应该检索当前的测试步骤名称 (colour_red),然后在测试套件中查找名为该名称的属性。
我这样做的原因是我在测试套件属性值中有数据需要在许多测试用例(所有测试用例都有很多测试步骤)之间共享。 如果没有 PRO 版本,我会很挣扎,但我认为使用 Groovy 应该有办法做到这一点。
感谢任何帮助,谢谢。
最佳答案
我认为研究属性扩展会对您有所帮助。 http://www.soapui.org/Scripting-Properties/property-expansion.html
让你继续......
您可以使用这些动态引用轻松引用属性值:
把像${#TestSuite#colour_red}
这样的引用作为“info”的属性值。
现在 info 属性值动态设置为 TestSuite 的 colour_red 属性值。
关于testing - SoapUI Free - 用于获取 TestSuite 属性的属性值中的 Groovy 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24038065/