使用QTP测试标准Windows对象.docx

上传人:b****3 文档编号:2227963 上传时间:2022-10-28 格式:DOCX 页数:12 大小:108.11KB
下载 相关 举报
使用QTP测试标准Windows对象.docx_第1页
第1页 / 共12页
使用QTP测试标准Windows对象.docx_第2页
第2页 / 共12页
使用QTP测试标准Windows对象.docx_第3页
第3页 / 共12页
使用QTP测试标准Windows对象.docx_第4页
第4页 / 共12页
使用QTP测试标准Windows对象.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

使用QTP测试标准Windows对象.docx

《使用QTP测试标准Windows对象.docx》由会员分享,可在线阅读,更多相关《使用QTP测试标准Windows对象.docx(12页珍藏版)》请在冰豆网上搜索。

使用QTP测试标准Windows对象.docx

使用QTP测试标准Windows对象

使用QTP测试标准的Windows对象

教学目的:

教学内容:

标准Windows对象是指基于Win32API和MFC创建的应用程序。

一、Desktop对象的使用

通过Desktop对象可以访问Windows的桌面顶层对象。

包括CaptureBitmap、ChildObjects、RunAnalog方法。

1.使用CaptureBitmap方法来截屏

'把屏幕截图保存到指定文件

Desktop.CaptureBitmap"d:

\TestCaptureBitmap.bmp",true

可以把屏幕对象的截屏保存为:

.png或.bm图像文件,取决于文件的扩展名

2.使用ChildObjects方法获取某个对象中包含的对象列表

使用ChildObjects方法可以获取到某个测试对象中包含的所有对象。

如下面的脚本通过Desktop对象的ChildObjects方法获取当前桌面中所有名为“无标题-记事本”的窗口对象

'创建描述对象

SetobjDesc=Description.Create()

'指定为标题为“无标题-记事本”的对象

objDesc("text").Value="无标题-记事本"

'通过Desktop对象的ChildObjects方法获取当前桌面中所有名为“无标题-记事本”的窗口

SetObjectCollection=Desktop.ChildObjects(objDesc)

MsgBoxObjectCollection.Count

3.使用RunAnalog方法运行低级录制过程

QTP支持录制鼠标和键盘操作的低级过程,这种录制模式叫“AnalogRecording”,如在QTP自带的Flight程序中,插入订票记录后,选择“File–>FaxOrder”,对AgentSignature中的签名,就可以用这种录制模式来录制签名的动作。

'激活窗口

Window("FlightReservation").Activate

'选择菜单

Window("FlightReservation").WinMenu("Menu").Select"File;FaxOrder..."

'录制签名的过程

Window("FlightReservation").Window("FaxOrderNo.10").RunAnalog"Track1"

'运行名为“Track1”的Analog脚本

Desktop.RunAnalog"Track1"

二、SystemUtil对象的使用

可以利用SystemUtil对象,在测试脚本的运行过程中,控制应用程序和进程,SystemUtil对象包括BlockInput、CloseDescendentProcesses、CloseProcessByHwnd、CloseProcessById、CloseProcessByName、CloseProcessByWndTitile、Run、UnblockInput

1、使用Run方法运行文件或程序

Run方法的使用格式:

Runfile,[params],[dir],[op],[mode]

其中,

“file”参数是必须输入的,是需要被运行的程序,或者是需要被打开的文件

“params”是可选输入参数,指启动应用程序所需的参数

“dir”是可选参数,指应用程序或文件的默认工作目录

“op”是可选参数,指文件打开的模式,包括”open”,”edit”,”explore”,”find”,”print”5种模式

“mode”参数是可选参数,用于指定程序窗口打开时的状态。

2、在脚本运行过程中屏蔽鼠标和键盘

在脚本运行过程中,屏蔽鼠标和键盘的输入可以使用SystemUtil对象的BlockInput(屏蔽输入)和UnBlockInput(解除屏蔽)方法。

3、关闭进程

CloseDescendentProcesses用于关闭所有由QTP打开的进程

CloseProcessByHwnd用于关闭包含指定句柄的窗口的进程

CloseProcessById用于关闭指定进程ID(PID)的进程

CloseProcessByName用于关闭指定名称的进程

CloseProcessByWndTitile用于关闭拥有指定标题的窗口的进程

SystemUtil对象的这些关闭进程的方法可以用于关闭任何标准应用程序,包括那些停止响应的应用程序。

三、Clipboard对象的使用

可以在测试脚本运行过程中,使用Clipboard对象来复制、剪切和粘贴文本对象,Clipboard对象拥有与VB语言中的Clipboard对象一样的方法,包括:

Clear:

用于清空Clipboard中的数据

GetData:

用于获取Clipboard中的数据

GetFormat:

用于获取Clipboard中的数据格式

GetText:

用于获取Clipboard中的文本数据

SetData:

用于向Clipboard设置数据

SetText:

用于向Clipboard设置文本数据

使用方法:

'创建Clipboard对象

SetMyClipboard=CreateObject("Mercury.Clipboard")

'清空Clipboard中的所有数据

MyClipboard.Clear

'设置Clipboard中的文本为“TEST”

MyClipboard.SetText"TEST"

'获取Clipboard中的文本

MsgBoxMyClipboard.GetText

CreateObject方法:

创建对象

‘打开Excel,在QTP的专家视图中输入以下代码

DimExcelSheet

SetExcelSheet=CreateObject("Excel.Sheet") ‘ 创建一个工作表

'MakeExcelvisiblethroughtheApplicationobject.

ExcelSheet.Application.Visible=True

'Placesometextinthefirstcellofthesheet.

ExcelSheet.ActiveSheet.Cells(1,1).Value="ThisiscolumnA,row1"

'Savethesheet.

ExcelSheet.SaveAs"d:

\TEST.XLS"  ‘ 路径可根据实际修改

'CloseExcelwiththeQuitmethodontheApplicationobject.

ExcelSheet.Application.Quit

'Releasetheobjectvariable.

SetExcelSheet=Nothing

四、标准Windows控件的基本属性和方法

1、使用Exist属性来判断控件是否存在

可以通过访问控件的Exist属性来判断控件是否存在于当前打开的应用程序中。

如,下面的测试脚本用于判断Login窗口是否存在:

'判断某个控件是否存在

IfDialog("Login").Exist(3)Then

MsgBox("Login窗口存在.")

Else

MsgBox("Login窗口不存在.")

EndIf

Exist属性中可指定“TimeOut”参数,用于指定查找控件的时间,调用Exist将返回True或false,用于表示窗口是否存在。

2、使用CheckProperty检查控件属性

使用CheckProperty方法可以实现与标准检查点相类似的功能,如,下面的测试脚本使用CheckProperty检查控件的属性是否与指定的值相一致,如果一致,则在测试结果中标识这pass,否则标识为fail:

'使用CheckProperty检查控件的属性是否与指定的值相一致

IfDialog("Login").WinEdit("AgentName:

").CheckProperty("text","MERCURY")then

'如果一致,则在测试结果中标识为Pass

Reporter.ReportEventmicPass,"AgentName","AgentName输入框的值为'MERCURY'"

Else

'否则标识为Fail

Reporter.ReportEventmicFail,"AgentName","AgentName输入框的值不等于'MERCURY'"

EndIf

运行结果:

3、使用GetROProperty获取控件属性

GetROProperty用于返回测试对象的当前属性,如,下面的测试脚本用于获取Login窗口的标题属性:

DimLoginTitle

Dialog("Login").Activate

'获取Login窗口的标题

LoginTitle=Dialog("Login").GetROProperty("text")

MsgboxLoginTitle

五、各类标准Windows控件的测试

1、Dialog对象的测试

Dialog对象是指Windows的对话框控件。

对Dialog对象的常用测试是Activate方法,用于定位对话框,使其处于激活状态。

如:

'定位并激活对话框

Dialog("Login").Activate

Activate方法模拟用户点击对话框的标题栏,定位到对话框,通常,在操作对话框中的控件之前,都需要先使用这个方法,确保当前对话框可用。

2、Static对象的测试

Static对象是指Windows静态文本、图像控件,可以用Check方法插入对图像的检查点,在录制过程中,选择菜单“Insert->Checkpoint->BitmapCheckpoint”,然后选择指定的图像区域,将产生如下代码:

Dialog("Login").Static("Static").CheckCheckpoint("Static")

3、WinButton对象的测试

WinButton对象的常用测试操作是Click方法,用于模拟用户单击按钮的事件,如:

Dialog("Login").WinButton("OK")

4、WinCalendar对象的测试(不要勾选VB和ActiveX)

WinCalendar对象是指日期和时间选择控件,如Windows搜索助理界面的指定日期控件就是WinCalendar对象,

'设置日期

Window("搜索结果").WinCalendar("SysDateTimePick32").SetDate"3-Mar-2008"

Window("搜索结果").WinCalendar("SysDateTimePick32_2").SetDate"4-Mar-2008"

'设置为当天日期

Window("搜索结果").WinCalendar("SysDateTimePick32").SetDateDate

SetDate方法的参数是“Date”,可以使用两种方式传入:

1)日期字符串型:

格式为d-MMM-yyyy,其中d表示日,MMM表示英文月份缩写,yyyy是年份

2)使用VBScript的日期函数,例如Date,Now,IsDate,CDate等。

5、WinCheckBox对象的测试

WinCheckBox对象的常用测试操作是Set方法,用于模拟用户把某个选择项选上,如,下面的脚本用于把CustomerName选择框勾上:

'定位

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学案例设计

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1