如何在SoapUI测试步骤中更改属性文件?

时间:2014-06-03 22:34:38

标签: groovy properties soapui

所以,让我们说我有一个名为Ben的属性文件,其中包含以下属性:

name: Ben
hair: blond
eyes: red

我已通过在测试步骤中键入其相对路径,手动将此属性文件导入属性测试步骤。然后我有一个测试用例输入文件中的名称,并确保它返回的输出是正确的头发和眼睛。现在,我想测试的不仅仅是一个人。让我们说我有另一个名为Jake的属性文件:

name: Jake
hair: black
eyes: blue

如果我想切换属性文件,我知道如何在我想运行新测试时手动输入此属性文件的路径。有没有办法让我实现一个Groovy脚本,它将在属性测试步骤中自动循环遍历不同的属性文件?这样我可以点击运行,它将能够测试所有属性,而不必单独运行每个属性文件。

1 个答案:

答案 0 :(得分:1)

以下内容应该是您所寻找的:

首先创建一个名为" fileName"的新全局属性。

(File -> Preferences -> Global Properties)

创建一个Groovy脚本测试步骤:

import com.eviware.soapui.SoapUI

def fileNames = ["Ben","Jack","Joe"]

for (i in fileNames){
     SoapUI.getGlobalProperties().getProperty('fileName').setValue(i)
    testRunner.runTestStepByName("testStepNameHere")
}

然后在属性文件路径中输入动态属性值。

示例:

C:/trunk/directory/Ben.txt 

会变成......

C:/trunk/directory/${fileName}.txt

您将需要考虑测试步骤的顺序,并且可能希望禁用您调用以在脚本中运行的测试步骤。这是SOAPUI方法。如果你有SOAPUI Pro,由于数据源/循环测试步骤,这可以做得更干净。

我希望这会有所帮助。