QTP调用Excel表格中的数据
例1. 通过配置的方法,把Excel中的数据引用到QTP中的Data Table中。
方法如下:
1. 创建一个xls格式的excel,把该excel的sheet表格命名为需要调用这个excel的动作的名称;
2. excel数据中的第一行数据作为列名
3. 在qtp中的Data Table中修改数据,会导致excel中的数据也被修改,
4. 在excel中修改数据,需要在qtp中重新打开脚本才能读取到excel中的新数据
例2. 在脚本中插入脚本语言来调用Excel文档中的数据;
脚本如下:DataTable.ImportSheet “xls的外部路径”,”xls表格中的需要导入的sheet活动薄的名字”,”导入本的表格的名字”
列如:把外部的数据从Action3.xls中的Action3sheet表格中导入到Date Table的Action3表格中,则脚本如下:
DataTable.ImportSheet"C:\Users\oushuxian\Desktop\Action3.xls" ,"Action3","Action3"
备注:
1. 以上的通过脚本的方法导入的数据,数据的存活期非常短,只在脚本运行过到该语句的Action时才存在,Action运行完成后就会被清空。
2. 需要引用从外部数据导入的的参数,需要设置为从Data Table中获取参数,参数列名需要和excel表格中的第一行的列名一致,否则脚本运行时无法获取数据
实例脚本:
DataTable.ImportSheet"C:\Users\oushuxian\Desktop\Action3.xls" ,"Action3","Action3"
'把外部的数据从Action3.xls中的Action3sheet表格中导入到Date Table的Action3表格中
SystemUtil.Run "E:\Source\Expert\bin\EClient.exe","","E:\Source\Expert\bin" '启动客户端
SwfWindow("Ragile Vision E-Client").WinEdit("Edit").Set "192.168.10.107" ‘输入IP
SwfWindow("Ragile Vision E-Client").SwfEdit("TxtName").Set DataTable("username", _
dtLocalSheet)
'输入的用户名d调用DataTable中的本地username列的数据
SwfWindow("Ragile Vision E-Client").SwfEdit("TxtPWD").SetSecure DataTable("password", dtLocalSheet)
'输入的密码d调用DataTable中的本地password列的数据
SwfWindow("Ragile Vision E-Client").SwfObject("BTOK").Click 57,18
SwfWindow("E-Client").SwfObject("TbtExit").Click 18,11
SwfWindow("E-Client").Dialog("注意").WinButton("是(Y)").Click
wait(5)