QTP使用Excel自动化模型对象基础操作详解
需积分: 3 155 浏览量
更新于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执行更复杂的操作,如查找特定数据、执行公式计算、合并单元格等,极大地丰富了测试用例的编写和执行。
114 浏览量
点击了解资源详情
126 浏览量
2010-06-24 上传
113 浏览量
2013-06-08 上传
2011-06-01 上传
141 浏览量
119 浏览量

dieinthesun
- 粉丝: 1
最新资源
- Avogadro:跨平台分子编辑器的开源实力
- 冰点文库下载工具Fish-v327-0221功能介绍
- 如何在Android手机上遍历应用程序并显示详细信息
- 灰色极简风格的html5项目资源包
- ISD1820语音模块详细介绍与电路应用
- ICM-20602 6轴MEMS运动追踪器英文数据手册
- 嵌入式学习必备:Linux公社问答精华
- Fry: Ruby环境管理的简化解决方案
- SimpleAuth:.Net平台的身份验证解决方案和Rest API调用集成
- Linux环境下WTRP MAC层协议的C代码实现分析
- 响应式企业网站模板及多技术项目源码包下载
- Struts2.3.20版发布,迅速获取最新稳定更新
- Swift高性能波纹动画实现与核心组件解析
- Splash:Swift语言的快速、轻量级语法高亮工具
- React Flip Toolkit:实现高效动画和布局转换的新一代库
- 解决Windows系统Office安装错误的i386 FP40EXT文件指南