1、首先需要安装Adobe Acrobat,而不是Adobe Reader
2、理解AcroExch.App 、AcroExch.AVDoc、AcroExch.PODoc
App 主要管理应用级别的对象信息,比如说Acrobat对象的窗口、大小等
AVDoc对象主要管理Acrobat视图级别的操作
PODoc对象主要管理Acrobat文档级别的对象操作
具体可以参考如下链接:
http://livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/wwhelp/wwhimpl/js/html/wwhelp.htm?&accessible=true
'*************************************************************'
'函数/过程名称:GetNumPdf()
'函数/过程的目的:统计PDF文件的页数
'假设:无
'输入:无
'返回值:无
'创建者:
'创建时间:
'修改者:
'修改原因:
'修改时间:
'*************************************************************'
Function GetNumPdf(filename)
Dim GetDoc
'调用PDF的COM组件(PDDoc对Acrobat文档级别的对象进行操作)
Set GetDoc = CreateObject ("AcroExch.PDDoc")
'打开PDF文件并获取页面数目
If GetDoc.open(filename) Then
GetNumPdf = GetDoc.GetNumPages()
Set GetDoc = Nothing
Else
MsgBox "不存在"
End If
End Function
Dim pagenum
pagenum = GetNumPdf ("D: est.pdf")
MsgBox "test.pdf 总页数为 " & pagenum
#########################################################
QTP检查PDF中是否存在某段文本
#########################################################
'*************************************************************'
'函数/过程名称:CheckText()
'函数/过程的目的:查看PDF文件中是否的包含某段文字
'假设:无
'输入:无
'返回值:无
'创建者:lee
'创建时间:
'修改者:
'修改原因:
'修改时间:
'*************************************************************
Function CheckText(obj,text)
flag = obj.FindText(text,true,true,false)
CheckText = flag
End Function
Dim AcroApp, AcroAVDoc
Dim gPDFPath
gPDFPath = "d: est.pdf"
Set AcroApp = CreateObject( "AcroExch.App" )
AcroApp.Show()
Set AcroAVDoc = CreateObject( "AcroExch.AVDoc" )
If AcroAVDoc.Open( gPDFPath, "" ) Then
msgbox "find text" +CStr(CheckText(AcroAVDoc,"string"))
End If
AcroApp.CloseAllDocs()
AcroApp.Exit()
Set AcroApp = Nothing
参考: 基于 Perfecto Mobile 的移动端自动化测试实践
https://www.ibm.com/developerworks/cn/mobile/mo-cn-perfecto/index.html
CEF:
http://blog.csdn.net/mergerly/article/details/18713439
https://www.ibm.com/developerworks/cn/mobile/mo-cn-perfecto/index.html