QTP使用Excel自动化模型对象基础操作详解
需积分: 3 188 浏览量
更新于2024-09-14
收藏 304KB DOC 举报
"QTP对Excel的基本操作,包括使用ExcelAutomationObjectModel(EOM)进行自动化测试中的数据驱动,以及一些关键的VBA代码示例。"
在自动化测试领域,QuickTest Professional(QTP,现在被称为UFT - Unified Functional Testing)是一种广泛应用的工具,它允许用户创建和执行功能测试脚本。尽管QTP自身的dataTable功能可以方便地处理数据,但熟练掌握Excel自动化模型对象(EOM)能提供更大的灵活性和控制力。EOM允许测试工程师直接与Excel工作簿和工作表进行交互,实现数据驱动测试,特别是在处理复杂或大量数据时。
以下是一段VBA代码,展示了如何使用EOM来操作Excel:
首先,引入必要的对象:
```vbscript
Dim fileName, filePath
Dim excelApp, fso, sheet, shell
```
接着,创建Excel应用程序对象:
```vbscript
Set excelApp = CreateObject("Excel.Application")
```
创建文件系统对象和外壳对象,用于后续操作:
```vbscript
Set fso = CreateObject("Scripting.FileSystemObject")
Set shell = CreateObject("WScript.Shell")
```
定义文件名和路径,并使Excel可见:
```vbscript
fileName = "d:\1.xls"
filePath = "d:\1"
excelApp.Visible = True
```
添加新的工作簿并保存:
```vbscript
excelApp.Workbooks.Add
excelApp.Save fileName
excelApp.Quit
```
重新打开已保存的工作簿并保持可见:
```vbscript
excelApp.Workbooks.Open fileName
excelApp.Visible = True
```
添加新的工作表并命名:
```vbscript
Set sheet = excelApp.Sheets.Add
sheet.name = "sunyu"
```
写入单元格数据:
```vbscript
sheet.cells(1, 1) = "hello world"
```
最后,使用外壳对象模拟键盘输入,实现“另存为”功能,因为直接使用`excelApp.Save`可能会遇到格式问题:
```vbscript
shell.SendKeys "^s"
shell.SendKeys "{Enter}"
```
代码中提到的问题是,VBS创建的xls文件在使用`excelApp.Save`保存时可能会遇到格式问题,而`shell.SendKeys`模拟的“另存为”操作可以避免这个问题,保存为xlsx格式的新文件。
通过这种方式,测试工程师可以在QTP测试脚本中直接读取、修改和管理Excel文件,实现更高效的数据驱动测试。此外,还可以使用EOM执行更复杂的操作,如查找特定数据、执行公式计算、合并单元格等,极大地丰富了测试用例的编写和执行。
2010-06-24 上传
141 浏览量
113 浏览量
2013-06-08 上传
2011-06-01 上传
119 浏览量
2022-09-23 上传
2022-09-24 上传
2022-09-24 上传

dieinthesun
- 粉丝: 1
最新资源
- 经典J2ME坦克对战游戏:回顾与介绍
- ZAProxy自动化工具集合:提升Web安全测试效率
- 破解Steel Belted Radius 5.3安全验证工具
- Python实现的德文惠斯特游戏—开源项目
- 聚客下载系统:体验极速下载的革命
- 重力与滑动弹球封装的Swift动画库实现
- C语言控制P0口LED点亮状态教程及源码
- VB6中使用SQLite实现列表查询的示例教程
- CMSearch:在CraftMania服务器上快速搜索玩家的Web应用
- 在VB.net中实现Code128条形码绘制教程
- Java SE Swing入门实例分析
- Java编程语言设计课程:自动机的构建与最小化算法实现
- SI9000阻抗计算软件:硬件工程师的高频信号分析利器
- 三大框架整合教程:S2SH初学者快速入门
- PHP后台管理自动化生成工具的使用与资源分享
- C#开发的多线程控制台贪吃蛇游戏源码解析