所以,让我们说我有一个名为Ben的属性文件,其中包含以下属性:
name: Ben
hair: blond
eyes: red
我已通过在测试步骤中键入其相对路径,手动将此属性文件导入属性测试步骤。然后我有一个测试用例输入文件中的名称,并确保它返回的输出是正确的头发和眼睛。现在,我想测试的不仅仅是一个人。让我们说我有另一个名为Jake的属性文件:
name: Jake
hair: black
eyes: blue
如果我想切换属性文件,我知道如何在我想运行新测试时手动输入此属性文件的路径。有没有办法让我实现一个Groovy脚本,它将在属性测试步骤中自动循环遍历不同的属性文件?这样我可以点击运行,它将能够测试所有属性,而不必单独运行每个属性文件。
答案 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,由于数据源/循环测试步骤,这可以做得更干净。
我希望这会有所帮助。