【发布时间】:2012-10-23 21:21:19
【问题描述】:
在soapUI 中,我有一个带有2 个测试用例的测试套件:SaveThing 和GetThing。
在 GetThing 中,我使用 Run TestCase testStep 运行 SaveThing 以获取 SaveThing 属性并在 GetThing 测试用例的请求中重新使用它们。
但我没有通过使用 Run TestCase testStep 成功实现这一目标。
谢谢。
【问题讨论】:
标签: soapui
在soapUI 中,我有一个带有2 个测试用例的测试套件:SaveThing 和GetThing。
在 GetThing 中,我使用 Run TestCase testStep 运行 SaveThing 以获取 SaveThing 属性并在 GetThing 测试用例的请求中重新使用它们。
但我没有通过使用 Run TestCase testStep 成功实现这一目标。
谢谢。
【问题讨论】:
标签: soapui
您还可以使用 PropertyTransfer 测试步骤在 TestSuite 级别定义一个属性,并在测试用例中设置/获取它们。这比编写 groovy 脚本要简单一些。
【讨论】:
我最终找到的一个可能的解决方案是在 Groovy 脚本中使用这个简单的代码:
def regnr = context.expand('${DataSource#id_regnr}')
context.getTestCase().setPropertyValue('id_regnr', regnr);
发生的情况是该属性设置为 SaveThing 测试用例中的“属性”选项卡。
然后在 GetThing testCase 中,我使用 Run testCase 测试步骤运行 SaveThing testCase。最后在 GetThing 的测试请求测试步骤中,我可以在请求消息中重新使用该属性来获取事物。
【讨论】:
您需要创建一个 groovy 脚本。下面的脚本创建一个全局属性。如果单击左侧菜单中的项目,您将在屏幕左下方看到“自定义属性”。这些是全局属性,您可以在项目的任何地方直接使用它们。
testRunner.testCase.testSuite.project.setPropertyValue("globalProp","propertyValue");
所以,您有 2 个测试用例。您想使用第一个变量。然后转到第一个测试用例并创建一个 groovy 步骤。您必须获取数据(在脚本编辑器中右键单击并选择获取数据选项)然后您需要使用上述脚本创建一个全局变量。
希望这会有所帮助。 问候, 苏哈
【讨论】: