PMP ,专注于WEB功能测试、性能测试、安全测试的研究,从事全面质量管理工作。曾任多家公司测试经理、测试主管。在电子政务、银行、电商、跨境电商、直播电商领域工作多年,曾获得某龙头集团公司公测一等奖,曾任职某头部直播电商公司测试团队负责人,具有业务敏感性,擅长从0到1搭建测试团队,具有海外工作经历,以及质量管理体系搭建。邮箱:89233502@qq.com
【QTP】读取Excel表的用法
上一篇 /
下一篇 2013-01-13 18:47:55
/ 个人分类:QTP学习
先贴上函数:
'========================================
'名 称:QTP_ReadExcel
'作 用:从Excel读数据
'参 数:sFileName:EXCEL文件名 sSheetName:Sheet表名
'返回值:把EXCEL变为2维数组返回
'========================================
Function QTP_ReadExcel(sFileName,sSheetName)
Dim oExcel
Dim oSheet
Dim oRange
Dim arrRange
On Error Resume Next
' 创建Excel应用程序对象
Set oExcel = CreateObject("Excel.Application")
If err.Number <> 0 Then
MsgBox "未能初始化Excel" & vbCrLf & "请确保Excel已安装", vbCritical
Exit Function
End If
On Error GoTo 0
On Error Resume Next
' 打开Excel文件
oExcel.Workbooks.Open(sFileName)
If err.Number <> 0 Then
MsgBox "未能加载Excel文件" & vbCrLf & "请确保Excel文件路径正确或格式正确", vbCritical
Exit Function
End If
On Error GoTo 0
' 获取表格的使用范围
Set oSheet = oExcel.Worksheets(sSheetName).UsedRange
' 获取从A列到Z列,从第1行到第1000行的范围i中的所有值
Set oRange = oSheet.Range("A1:Z1000")
'把Excel数据转换到数组
arrRange = oRange.Value
oExcel.WorkBooks.Item(1).Close
' 退出Excel
oExcel.Quit
Set oExcel = Nothing
' 返回包含Excel数据的数组
QTP_ReadExcel = arrRange
End Function
再贴上调用方法:
Dim arrExcel arrExcel = QTP_ReadExcel("D:\test.xls","sheet1") print arrExcel(1,2) |
假设表格如下,
要使用D2,则为arrExcel(2,4)
要使用A10,则为arrExcel(10,1),应该找出规律了吧。
我一般用此函数进行参数化和配置的操作,将需要测试的数据写在Excel中,在运行QTP时,会进行读取Excel中数据来进行测试。也会将一些配置写入Excel中,如用1和0表示是否,来进行是否重启IE、是否写Log等动作的控制,也可以写入数字,来控制脚本的运行次数,个人感觉挺方便的。 还是不太喜欢使用QTP自带的DataTable,一来是觉得多台测试机的情况下,每台都要配置比较麻烦,二来是担心一些配置会影响脚本。
本文摘自陈永达个人博客
收藏
举报
TAG: