QTP对Excel的操作
QTP对Excel的操作(一)
'*************************************************************'
'函数/过程名称:DoExcel()
'函数/过程的目的:操作Excel(读写)
'假设:无
'影响:
'输入:无
'返回值:无
'创建者:lee
'创建时间:2010/12/13
'修改者:
'修改原因:
'修改时间:
'*************************************************************'
Function DoExcel(filepath,sheetname,x,y)
Dim ObjExcel,SrcExcel,ExcValue
Set ObjExcel = CreateObject ("Excel.Application")
'Excel程序不在前台显示
ObjExcel.Visible = False
'设置变量SrcExcel等于Excel工作薄open
'Activate定位活动的sheet
'并给某一单元格赋值
Set SrcExcel = ObjExcel.WorkBooks.Open(filepath)
SrcExcel.WorkSheets(sheetname).Activate
SrcExcel.WorkSheets(sheetname).Cells(x,y).Value = "该单元格的值"
'当出现“在当前位置发现已经存在为"RESUME.XLW"的文件。您希望将该文件替换掉吗?” 使用DisplayAlerts代码该列
ObjExcel.DisplayAlerts = False
ObjExcel.save
'Excel退出,释放资源
ObjExcel.quit
Set ObjExcel = Nothing
Set SrcExcel = Nothing
End Function
Call DoExcel("D:/Case.xls","Sheet1",9,8)
'*************************************************************'
'函数/过程名称:DoExcel() 第二种方法实现。
'函数/过程的目的:操作Excel(读写)
'创建者:lee
'创建时间:2010/12/13
'修改者:
'修改原因:使用统一对象ObjExcel
'*************************************************************'
Function DoExcel(filepath,sheetname,x,y)
Dim ObjExcel,SrcExcel,ExcValue
Set ObjExcel = CreateObject ("Excel.Application")
'Excel程序不在前台显示
ObjExcel.Visible = False
'Activate定位活动的sheet
'并给某一单元格赋值
'Set SrcExcel = ObjExcel.WorkBooks.Open(filepath)
ObjExcel.WorkBooks.Open(filepath)
ObjExcel.WorkSheets(sheetname).Activate
ObjExcel.WorkSheets(sheetname).Cells(x,y).Value = "该单元格的值"
'当出现“在当前位置发现已经存在为"RESUME.XLW"的文件。您希望将该文件替换掉吗?” 使用DisplayAlerts代码该列
ObjExcel.DisplayAlerts = False
ObjExcel.save
'Excel退出,释放资源
ObjExcel.WorkBooks.Close
ObjExcel.quit
Set ObjExcel = Nothing
End Function
Call DoExcel("D:/Case.xls","Sheet1",9,8)
QTP对Excel的操作(二)
'Function ReadExcel(filepath,sheetname,x,y)
Dim ObjExcel,SrcExcel,ExcValue
Set ObjExcel = CreateObject ("Excel.Application")
'Excel程序不在前台显示
ObjExcel.Visible = False
'设置变量SrcExcel等于Excel工作薄open
'Activate定位活动的sheet
'将某一单元格的值赋予变量 ExcValue
Set SrcExcel = ObjExcel.WorkBooks.Open(filepath)
SrcExcel.WorkSheets(sheetname).Activate
ExcValue = SrcExcel.WorkSheets(sheetname).Cells(x,y).Value
'当出现“在当前位置发现已经存在为"RESUME.XLW"的文件。您希望将该文件替换掉吗?” 使用DisplayAlerts代码该列
ObjExcel.DisplayAlerts = False
ObjExcel.save
'将变量的值赋予函数本身,供调用函数时使用
DoExcel = ExcValue
'Excel退出,释放资源
ObjExcel.quit
Set ObjExcel = Nothing
Set SrcExcel = Nothing
End Function
QTP对Excel的操作(三)
QTP对Excel的操作(一)与(二)中,分别讲解了对Excel的读与写操作,本讲我们以实例讲解,QTP执行测试过程中如何通过对Excel读写实现执行测试用例。
本例通过注册新浪会员页面(http://login.sina.com.cn/signup/signup.php)进行讲解。
需求:
1、新浪会员,填写注册信息,点击提交
2、如果不符合输入域校验要求,会给出相应的错误提示
3、我们验证,给出的输入域错误提示,是否是我们期望的值,
如对第一项邮箱的校验, 如果不符合则 期望值 正确的提示“邮箱名长度应为4-16位” 如果给出的提示不与我们期望的不一致,则把错误的结果写入到Excel中,与期望值进行对比,然后得出测试用例执行时通过还是失败。我们分为三步走。
1、先设定Excel格式,如测试用例参数值(即输入邮箱的值)、期望值、测试用例及结果等。由于无法上传附件,因此附图,如下图所示:
2、录制 注册新浪会员页面(http://login.sina.com.cn/signup/signup.php)设置邮箱为“123”,点击提交,停止,录制代码如下图所示;
3、录制完成后,我们看到邮箱给出的错误提示是“邮箱名长度应为4-16位”,是符合我们的要求的,我们假设后续版本中温馨提示不对,我们如何处理呢?因此我们首先想到是检查点,检查其是否正确。添加检查点需要再QTP 在Record模式下,点击Insert-CheckPoint-Text CheckPoint然后选中 “邮箱名长度应为4-16位”,添加检查点后,如下图:回放我们看到能通过。
4、而这样添加检查点,与我们设想的操作Excel是不一致的(目前并未操作Excel)。我们需要对代码进行修订,因此我们使用对象的GetROProperty 属性来进行验证。GetROProperty 属性能够获取对象的某个属性值,具体应用如下,如果想详细的参考用法,可以参考QTP帮助手册。如下图。
5、如下贴上完整的QTP修订后的代码。包括读Excel、写Excel及QTP对函数的操作
*************************************************************'
'函数/过程名称:DoExcel()
'函数/过程的目的:操作Excel(读写)
'假设:无
'影响:
'输入:无
'返回值:无
'创建者:lee
'创建时间:2010/12/13
'修改者:
'修改原因:
'修改时间:
'*************************************************************'
Function DoExcel(filepath,sheetname,x,y)
Dim ObjExcel,SrcExcel,ExcValue
Set ObjExcel = CreateObject ("Excel.Application")
'Excel程序不在前台显示
ObjExcel.Visible = False
'设置变量SrcExcel等于Excel工作薄open
'Activate定位活动的sheet
'并给某一单元格赋值
Set SrcExcel = ObjExcel.WorkBooks.Open(filepath)
SrcExcel.WorkSheets(sheetname).Activate
SrcExcel.WorkSheets(sheetname).Cells(x,y).Value = Checkvalue
'当出现“在当前位置发现已经存在为"RESUME.XLW"的文件。您希望将该文件替换掉吗?” 使用DisplayAlerts代码该列
ObjExcel.DisplayAlerts = False
ObjExcel.save
'Excel退出,释放资源
ObjExcel.quit
Set ObjExcel = Nothing
Set SrcExcel = Nothing
End Function
''*************************************************************'
'函数/过程名称:ReadExcel()
'函数/过程的目的:操作Excel(读写)
'假设:无
'影响:
'输入:无
'返回值:无
'创建者:lee
'创建时间:2010/12/13
'修改者:
'修改原因:
'修改时间:
'*************************************************************'
Function ReadExcel(filepath,sheetname,x,y)
Dim ObjExcel,SrcExcel,ExcValue
Set ObjExcel = CreateObject ("Excel.Application")
'Excel程序不在前台显示
ObjExcel.Visible = False
'设置变量SrcExcel等于Excel工作薄open
'Activate定位活动的sheet
'并给某一单元格赋值
Set SrcExcel = ObjExcel.WorkBooks.Open(filepath)
SrcExcel.WorkSheets(sheetname).Activate
ExcValue = SrcExcel.WorkSheets(sheetname).Cells(x,y).Value
'当出现“在当前位置发现已经存在为"RESUME.XLW"的文件。您希望将该文件替换掉吗?” 使用DisplayAlerts代码该列
ObjExcel.DisplayAlerts = False
ObjExcel.save
DoExcel = ExcValue
'Excel退出,释放资源
ObjExcel.quit
Set ObjExcel = Nothing
Set SrcExcel = Nothing
End Function
'Call DoExcel("D:/case.xls","Sheet1",9,5)
Dim Checkvalue
'从读取Excel的输入值,赋予邮箱输入域
Browser("注册新浪会员").Page("注册新浪会员").WebEdit("user_name").Set ReadExcel ("D:/case.xls","Sheet1",11,5)
Browser("注册新浪会员").Page("注册新浪会员").WebButton("提交").Click
wait (2)
Checkvalue= Browser("注册新浪会员").Page("注册新浪会员").WebElement("邮箱名长度应为4-16位").GetROProperty("innertext")
'将获得的温馨提示写入Excel中
Call DoExcel("D:/case.xls","Sheet1",11,8)
6、第5步完成后,运行QTP,然后进入D盘下,查找case.xls,可以看到Excel的结果,如下图所示。
7、通过excel的统计,我们能够很明显的看到那些测试用例执行通过,那些未通过,而且还可以进行bug成功与失败的统计图。以后,只需要更改输入值,及期望值等即可,完全实现了自动化。
QTP对Excel的操作相关推荐
- QTP对Excel的操作(三)之 Vbs对Excel的操作 实例讲解
QTP对Excel的操作(一)与(二)中,分别讲解了对Excel的读与写操作,本讲我们以实例讲解,QTP执行测试过程中如何通过对Excel读写实现执行测试用例. 本例通过注册新浪会员页面(http:/ ...
- QTP的那些事--操作excel的函数
1: QTP Excel函数 操作EXCEL 数据表格 表单 编辑EXCEL 工作表 2: Dim ExcelApp 'As Excel.Application 3: Dim excelSheet ' ...
- python能实现excel什么功能_Python pandas对excel的操作实现示例
最近经常看到各平台里都有Python的广告,都是对excel的操作,这里明哥收集整理了一下pandas对excel的操作方法和使用过程.本篇介绍 pandas 的 DataFrame 对列 (Colu ...
- python处理excel表格实例-python2 对excel表格操作完整示例
本文实例讲述了python2 对excel表格操作.分享给大家供大家参考,具体如下: #!/usr/bin/env python2 # -*- coding: utf-8 -*- "&quo ...
- python处理excel教程实例-python 读写excel文件操作示例【附源码下载】
本文实例讲述了python 读写excel文件操作.分享给大家供大家参考,具体如下: 对excel文件的操作,python有第三方的工具包支持,xlutils,在这个工具包中包含了xlrd,xlwt等 ...
- setcellvalue 格式_POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
实际开发过程中通常用到的就是从数据库导出EXCEL表格了,JXL可以这样做,其实POI也可以(关于JXL与POI的异同可访问我之前总结的文章),之前写过POI对七种文档(当然也包括EXCEL)的内容读 ...
- python对excel操作简书_Python实现EXCEL常用操作——pandas简介
知乎的代码块太丑了,这里的内容就更新到简书了Python实现EXCEL常用操作--pandas简介www.jianshu.com EXCEL是日常办公最常用的软件,然而遇到数据量特别大(超过10W条 ...
- POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
http://javacrazyer.iteye.com/blog/894758 实际开发过程中通常用到的就是从数据库导出EXCEL表格了,JXL可以这样做,其实POI也可以(关于JXL与POI的异同 ...
- python对excel增删改查_Python之Excel 优雅操作手法 精选
前言 一直想写这一篇,却又一直被事情拖着. 我带的一个项目团队正好进行到这一块儿了,正好,将这事儿办了,以后要用的时候也不用到处找. 半点不求人. 慢慢看,优雅的操作都在后头 Tips:当下2020年 ...
最新文章
- Ant 条件判断 if
- 从零开始学习OpenGL ES之五 – 材质
- 大学生推荐书籍阅读【开阔视野、境界提升】
- 汽车之家店铺数据抓取 DotnetSpider实战
- crontab/ntpdate——时间同步
- springboot与springcloud的关系(转载)
- 《Scikit-Learn与TensorFlow机器学习实用指南》第16章 强化学习
- gps模拟器 matlab,基于Matlab/Simulink的数字中频GPS信号软件模拟器
- 2022 01 27 dnf 起号 搬砖 脚本源码开源 by ~戴眼镜的猫
- RLC电阻电感电容取值标准
- 使用DOM,SAX解析XML文档
- 产品经理的职业规划及绩效评估
- iOS锁屏页面控制音乐播放
- vSphere6.7中WindowsServer2012r2虚拟机磁盘扩容
- Coursera | Introduction to Data Science in Python(University of Michigan)| Assignment1
- 【学校实验】编码实现一个地址簿类(AddressBook),通过getAllInfo()输出,实现另一个类(TestAddressBook)该类存有主方法
- 【天池】优惠券使用预测
- 长岛县人民政府成功部署督查督办管理系统
- 安装Office2010/2007出现1935错误解决办法
- 自动判断QQ是否在线,并显示在线状态
热门文章
- 掌门1对1java面试_掌门1对1
- “合”而不同,持“智”以恒,幂律智能2022产品升级发布会全程回顾!
- 按键控制led灯python程序_树莓派使用threading函数实现多按键控制LED灯
- Leetcode-数学题-1232. 缀点成线
- SCNavTabBarController
- npm 淘宝||华为-镜像的安装(2022最新版)
- Python Excel to mysql, pandas “None” 空值报错问题处理
- WebService 远程调用方法汇总
- Kubernetes 中跨 StorageClass 迁移存储完全指南
- 榆社职业中学计算机,榆社:职业中学召开新生开学典礼暨教师节表彰大会