如何导入UFT API测试的数据文件?

我正在开发一个项目,该项目需要在运行时动态导入测试数据并运行与测试数据相对应的API测试。

我尝试使用XMLload,我直接从xml请求加载。 这似乎工作得很好。

但是像我们导入测试数据的GUI测试一样,我希望API测试也是如此 – 我可以动态地从外部源导入excel并将值赋给请求。

我怎样才能做到这一点?

据我了解你的问题,你想从Excel文件加载测试数据。 这就是我在之前的项目中所做的,但却有所不同,所以我希望这对你有用。

这些步骤将帮助您从Excel文件中驱动测试,您将在其中提供请求XML文件和其他测试数据的位置,例如:

  • 执行标志
  • WSDL
  • 终点地址
  • 环境
  • 等等…

================================================== =======================
从Excel文件导入数据的步骤:

打开Data窗格(查看 – >数据)
单击on New Data Source

在此处输入图像描述

选择Database (不要担心我们将使用Excel作为数据库)
新窗口将显示为“ Set Database Connection
单击Build Connection String图标

在此处输入图像描述
如果未选中,请单击“ Provider选项
选择Microsoft Office 12.0 Access Database Engine OLE DB Provider
单击Next
在“ Data Source部分中,提供Excel( .XLSX )文件的路径,并在此(连接)选项卡上将所有内容保留为默认值
单击“ Advanced选项卡
选择“从Access permissions Read Write部分
转到“ All选项卡
选择Extended Properties ,然后单击Edit Value
在“ Property Value字段中键入Excel 12.0 Xml ,然后单击“ OK
现在返回Connection选项卡,然后单击Test Connection按钮
它应显示Test connection succeeded消息,如果不是,则返回并再次执行所有步骤
单击“ OK
单击Next
在“ Data Source name字段中提供工作表名称(要导入的Data Source name
例如: [TEST_DATA$]其中TEST_DATA是工作表名称
Check SQL Statement按钮上方的大框中键入您的SQL查询
例如:
我想从TEST_DATA表中导入Execution_Flag列具有Y值的所有行。 我使用的SQL语句:

 SELECT * FROM [TEST_DATA$] WHERE Execution_Flag = 'Y' 

单击Check SQL Statement按钮,它应该在新的Query Preview窗口中显示结果行
关闭“ Query Preview窗口并单击“ Set SQL Statement窗口中的“完成Set SQL Statement
现在,您应该在“数据”窗格中看到结果行
*我喜欢这种方法的方法是,如果您在Excel文件中进行更改并刷新数据窗格,它将自动更新Data窗格中的Data

================================================== =======================
现在从Excel文件中读取数据:
假设我想从Excel文件中指定的位置读取我的请求XML文件(我们已导入)
我正在使用Read From File activity
注意:这只是一个提供想法的示例

在工作区中拖放“ Read From File activity
这将抱怨没有为要在“ 错误”窗格中读取的文件指定路径
双击此消息,它将在“ Properties窗格中突出显示该字段
将鼠标hover在文件路径旁边的“值”字段上,然后单击最后一个图标Link to data source ,这将打开Select Link Source for 'File path'窗口的Select Link Source for 'File path'
单击“ Data source column单选按钮,然后单击“ Select a data source部分中的“ TEST_DATA
从“ Select data部分中选择相应的列名称,然后单击“ OK ,如图所示

在此处输入图像描述

================================================== =======================
类似地,您可以通过链接数据源并将其作为输入传递,从Excel文件到数据窗格将值/ s传递给自定义代码,在自定义代码中,您可以通过以下方式检索值:

 string environmentName = CodeActivity18.Input.Environment_Name; 

同样,您可以将Excel文件写为自定义代码的输出:

 string finalResponseXMLPath = "some path"; CodeActivity18.Output.ResponseXML_FinalPath = finalResponseXMLPath;