标准Windows控件的常规测试方法及VBS脚本代码

 标准Windows控件包括对话框、按钮、静态文本及图像控件、日期时间选择控件,单选按钮、多选框、下拉框、Windows窗体控件、输入框和加密输入框、列表、列表视图、菜单、滚动条、数值选择控件、状态栏、页签、工具栏、树及其他控件和控件状态,现分别按照VBS名称及常规测试方法总结如下:

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

Rem 判断某个控件是否存在

If DialogLogin.Exist(3) Then

  MsgBox(“Login 窗口存在”)

Else

  MsgBox(“Login窗口不存在”)

End If

2、用CheckProperty检查控件属性

   使用CheckProperty检查控件属性是否与指定的值一致,如果一致则在结果中标识Pass,否则标识为Fail

Dialog(“Login”).WinEdit(“Agnt Name”)>CheckProperty(“text”)

Reporter.ReporEvent micPass,“Agent Name”

3、使用GetRoproperty返回测试对象的当前属性

Dim LoginTitle

Login Title = Dialog(“login”).GetROProperty(“text”)  Rem 获取窗口标题

MsgBox LoginTitle

4Dialog对象的测试

Dialog对象是指Windows的对话框控件,对Dialog对象的常用测试是Activate方法,该方法用于模拟用户点击对话框的标题栏,定位到对话框并激活窗口。通常在操作对话框中的控件之间先使用该方法,确保当前对话框可用。如:

Dialog(“Login”).Activate

5Static对象的测试

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

Dialog(“Login”).Static(“Static”).Check CheckPoint(“Static”)

注意在插入检查点后,可以定位到代码行中的CheckPoint,单击鼠标右键,选择CheckPoint Properties来重新编辑检查点

6WinButton对象的测试

WinButton对象很常见,即单击按钮控件,常规测试操作是Click单击,示例代码如下:

Dialog(“Login”).WinButton(“OK”).Click  Rem 单击OK按钮

7WinCalender对象的测试

WinCalender对象是指日期和时间选择控件,例如,Windows搜索助理界面的指定日期控件,常用测试操作是设定日期,需要使用SetDate方法,Date的参数传入有2种方式:

(1)日期字符串型,格式为D-MM-YYYY,如:

Window(“我的电脑”).WinCalender(“SysDateTimePick32”).SetDate”3-Jen-2010”

(2)使用VBScript的日期函数,DateNowIsDateCDate等,如:

Window(“我的电脑”).WinCalender(“SysDateTimePick32”).SetDate Date Rem设置为当天

此外还可以使用WinCalender对象的SetTime方法来设定时间,如:

Dialog(“Common Controls”).WinCalendar(“SysDateTimePick32”).SetTime”11:11:11”

就是把控件的时间设置为111111

8WinCheckBox对象的测试

WinCheckBox对象为选择框控件,常规测试操作是Set方法,用于模拟用户把某个选项选上,Set方法的参数可以输入ONOFFDIMMED三种状态值,示例代码如下:

Window(“Flight Reservation”).Dialog(“Open Order”).Activate

Window(“Flight Reservation”).Dialog(“Open Order”).WinCheckBox(“Customer Name”).Set”ON”         Rem Customer Name选项打上钩

Window(“Flight Reservation”).Dialog(“Open Order”).WinEdit(“Edit”).Set”CNJ”

9WinComboBox对象的测试

WinComboBox对象为下拉框控件,常规测试操作是Select方法,用于模拟用户从下拉框中选择某项内容,

Rem 从下拉框中选择

Window(“Flight Reservation”).WinComboBox(“Fly To:”).Select”Frankfurt”

Window(“Flight Reservation”).WinButton(“FLIGHT”).Click

还可以通过GetItemsCount来获得下拉框中所有选项总数,如:

MsgBox Window(“Flight Reservation”).WinComboBox(“Fly To:”).GetItemsCount

Dim ItemStr

ItemStr = Window(“Flight Reservation”).WinComboBox(“Fly To:”).GetItem(1)

If ItemStr = “Denver” Then

MsgBox “OK”

Else

MsgBox ItemStr

End if

10Windows对象的测试

Windows对象是指窗体控件,常规的测试操作包括ActivateMaximizeRestore,还可以通过GetROProperty方法来获得窗口的标题,用来判断是否为指定的名称。测试示例脚本代码如下:

Window(“记事本”).Activate   Rem 激活记事本窗口

Window(“记事本”).Maximize  Rem 最大化记事本窗口

Window(“记事本”).Restore    Rem 恢复记事本窗口

MsgBox Window(“记事本”).GetROProperty(“text”)  Rem 获取记事本窗口标题

11WinEdit对象的测试

WinEdit对象为常见的输入框,常用的测试方法是Set,用于模拟向输入框中输入文本,如果需要加密的文字,可以使用SetSecure方法,这个主要用于在录制测试脚本时,对输入密码进行加密,然后在回放时进行解密,这样就避免密码明文显示在测试脚本中。示例代码如下:

Dialog(“Login”).Activate

Dialog(“Login”).WinEdit(“AgentName:”).Set “MERCURY”

Rem Password框中输入加密后的密码提示字符串

Dialog(“Login”).WinEditor(“PassWord:”).SetSecure“****************************”

Rem ***为加密后的密码字符串,此处省略为***

Dialog(“Login”).WinButton(“OK”).Click

此外,还有一个SetSelection方法,为选择编辑框,如:

Window(“REASES”).Dialog(“楼板布置”).WinEdit(“板厚”).SetSelection 0,1

12WinEditor对象的测试

WinEditor对象与WinEdit对象方法类似,可以通过Set方法和SetSecure方法来模拟用户输入的加密或未加密的内容,也可以使用Type来模拟用户往输入框输入文本,如:

Rem 往记事本中输入一段文字

Window(“记事本”).WinEditor(“Edit”).Type “1234567890ABCDEF”

Rem 键入回车键

Window(“记事本”).WinEditor(“Edit”).Type micReturn

13WinList对象的测试

WinList对象是指列表控件,常用的测试操作为Select,用于模拟用户选择列表中的一项内容,如:

Window().Dialog().Activate

Rem 选择WinList中的某项内容,通过名称指定

Window(“REASES”).Dialog(“楼层组装”).WinList(“标准层”).Select “1标准层

Window(“Flights Reservation”).Dialog(“Flights Table”).WinButton(“OK”).Click

也可以指定Index来选择内容,注意Index是从0开始的。

14WinListView对象的测试

WinListView对象是指列表视图控件,常用的操作方式是Select操作,用于模拟用户选择列表视图中的一项内容,示例脚本如下:

Rem 通过名称职定选择SysListView32中的某项内容

Window(“我的电脑_2”).WinListView(“SysListView32”).Select “本地磁盘 (C:\) ”

Rem 通过指定Index来选择,Index0开始

Window(“我的电脑_2”).WinListView(“SysListView32”).Select 2  rem 选择第三项

WinListView还可以使用ExtendSelect方法,用于模拟用户按下CTRL键进行多选,如:

Window(“我的电脑_2”).WinListView(“SysListView32”).Select “本地磁盘 (C:\) ”

Window(“我的电脑_2”).WinListView(“SysListView32”). ExtendSelect “本地磁盘 (D:\) ”

15WinMenu对象的测试

WinMenu对象是指菜单控件,常用的测试操作是Select方法,用来模拟用户选择某个菜单项,如:

Rem 通过指定菜单名称来选择菜单项新建文件

Window(“记事本”).Activate

Window(“记事本”).WinMenu(“Menu”).Select”文件(F);新建(N)Ctrl+N ”

Rem 通过指定Index来选择菜单,注意Index是从1开始的

Window(“记事本”).WinMenu(“Menu”).Select”<Item 1>;<Item 2>”

可以使用BuildMenuPath方法构建菜单路径,如:

Rem 构建菜单选择路径“文件|新建”

MenuPath = Window(“记事本”).WinMenu(“Menu”).BulidMenuPath(”文件(F);新建(N)Ctrl+N ”)

Window(“记事本”).WinMenu(“Menu”).Select MenuPath

也可以使用Index来指定菜单项:

MenuPath = Window(“记事本”).WinMenu(“Menu”).BulidMenuPath(1,2)

Window(“记事本”).WinMenu(“Menu”).Select MenuPath

也可以达到上述效果。

16WinRadioButton对象的测试

WinRadioButton对象是指单选按钮控件,常用的测试操作就是Set方法,用时指定需要Set的控件名称即可,代码如下:

Rem 重力荷载代表值选项被选定

Window(“REASES”).Dialog(“工况组合”).WinRadioButton(“重力荷载代表值”).Set

17WinScrollBar对象的测试

WinScrollBar对象指滚动条,常规的测试方法有SetNextLineNextPagePrevLinePrevPage。如果模拟向上滚动1行,可以使用PrevLine方法,多行则可以指定参数为行数,如果想让滚动1页,可以使用PrevPage方法,NextPage相当按下PageDown按钮,PrevPage相当于按下PageUp按钮。

Window(“Book1”).Activate

Rem 单击Excel应用程序中的滚动条,让其向下滚动一行

Window(“Book1”).WinScrollBar(“ScrollBar”).NextLine 1

Window(“Book1”).WinScrollBar(“ScrollBar”).NextPage 1

Window(“Book1”).WinScrollBar(“ScrollBar”).Set 5

通常可以使用GetROProperty方法先获得ScrollBarmaxscrollpos属性,取得最大滚动范围,再根据值设定滚动条的位置,免得Set方法设置的位置超过了范围,示例脚本如下:

Window(“Book1”).Activate

Rem 获取ScrollBarmaxscrollpos属性

Max = Window(“Book1”).WinScrollBar(“ScrollBar”).GetROProperty(“maxscrollpos”)

Rem 设置滚动条位置在中间

Pos = max/2

Window(“Book1”).WinScrollBar(“ScrollBar”).Set Pos

18WinSpin对象的测试

WinSpin是数值选择控件,如Windows的日期和时间属性窗口中的年份选择控件,常用的测试操作是NextPrevSet方法,示例脚本如下:

Dialog(“日期和时间 属性”).Activate

Rem 如果是2009年,则向后选择

If Dialog(“日期和时间 属性”).WinEdit(“Edit”).GetROProperty(“text”) = 2009  Then

Dialog(“日期和时间 属性”).WinSpin(“msctls_statusbar32”).Next

End if

Rem 直接把日期设置为2010

Dialog(“日期和时间 属性”).WinSpin(“msctls_updown32”).Set 2010

19WinStatusBar对象的测试

WinStatusBar是指状态栏控制,常用的操作是通过GetContent获得状态栏的所有信息,简单的脚本如下:

Rem 获取记事本的状态栏信息

Status = Window(“记事本”).WinStatusBar(“msctls_statusbar32”).GetContent

MsgBox Status

需要注意的是,GetContent获得的是全部的状态栏的信息,如果状态栏分成若干部分的时候,就要使用WinStatusBarGetItem方法了,如下列脚本,首先使用GetItemsCount方法获得状态栏的个数,然后使用GetItem方法循环取得每一部分的状态栏信息:

Rem 使用GetItemsCount方法获得状态栏部分的个数

StatusItemsCount = Window(“C:\”).WinStatusBar(“msctls_statusbar32”).GetItemsCount

Rem 循环获得每一部分状态栏的信息

For I=0 to StatusItemCount-1

StatusItem = Window(“C:\”).WinStatusBar(“msctls_statusbar32”). GetItems(I)

   MsgBox StatusItem

Next

20WinTab对象的测试

WinTab对象指页签控件,常用的测试操作就是Select方法,Select的方法也可以使用IndexIndex是按照页签的顺序从0开始的,此外还提供了GetSelection方法用于确定当前所选的页签是哪个,脚本如下:

Rem Windows的时间日期属性窗口页签显示

Dialog(“日期和时间 属性”).WinTab(“SysTabControl32”).Select“时区”

Dialog(“日期和时间 属性”).WinTab(“SysTabControl32”).SelectInternet 时间”

Dialog(“日期和时间 属性”).WinTab(“SysTabControl32”).Select“时间和日期”

Select方法的输入参数换成Index120)也可以达到同样的效果。

Rem 选择第二个页签

Dialog(“日期和时间 属性”).WinTab(“SysTabControl32”).Select 1

Rem 通过GetSelection获得当前所选的页签名称

SelectTab = Dialog(“日期和时间 属性”).WinTab(“SysTabControl32”).GetSelection

Reporter.ReportEvent micDone,”当前所选的Tab页是:“,SelectedTab

21WinToolBar对象的测试

WinToolBar对象是指工具栏控件,其常用的操作方式是Press方法,用于模拟用户单击工具栏上的某个按钮,如向上、“后退”、“搜索”等,脚本代码如下所示:

Window(“C:\”).WinToolBar(“ToolBarWindow32”).Press“向上”

Window(“我的电脑”).WinToolBar(“ToolBarWindow32”).Press“后退”

Window(“C:\”).WinToolBar(“ToolBarWindow32”).Press“搜索”

Press方法也可以是IndexIndex按照按钮顺序从1开始,如将上面的代码的“向上”、“后退”和“搜索”改为314,效果是一样的。

22WinTreeView对象的测试

WinTreeView对象指树形选择控件,常用的测试操作包括SelectExpandExpandAllCollapse等方法。

Rem 在资源管理器中选择某个磁盘

Window(“我的电脑”).WinTreeView(“SysTreeView32”).Select“桌面;我的电脑;本地磁盘(C:)”

节点用分号(;)隔开。相应的用Expand展开某个节点,用ExpandAll展开全部目录节点:

Window(“我的电脑”).WinTreeView(“SysTreeView32”).Expand“桌面;我的电脑 ‘展开某个节点

Window(“我的电脑”).WinTreeView(“SysTreeView32”).ExpandAll“桌面;我的电脑;本地磁盘(C:)” ‘展开全部目录节点

Collapse收起处于展开状态的节点

Window(“我的电脑”).WinTreeView(“SysTreeView32”). Collapse

23WinObject对象的测试

WinObject对象对于测试那些不被QTP识别并归类成特定控件类型的Windows控件,与拥有与其他个各类空间对应的测试对象基本相同的基本方法和属性,如ExistClickTypeGetRoPropertyCheckProperty等,如:

Window(“REASES”).Window(“平面图”).WinObject(“MBaseView”).Drag 100,100

Window(“REASES”).Window(“平面图”).WinObject(“MBaseView”).Drop 1000,1000

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
开发VBScript脚本工具是指使用VBScript编程语言来创建一个能够执行一系列任务的工具。VBScript是一种轻量级的脚本语言,常用于Windows操作系统环境下的自动化任务和脚本开发。 开发VBScript脚本工具需要以下步骤: 1. 规划:确定工具的功能需求和目标。例如,工具可能需要读取和写入文件、处理文本数据、与操作系统交互等。 2. 编写脚本代码:使用VBScript语法编写脚本代码,按照需求实现工具的各项功能。可以使用文本编辑器或集成开发环境(IDE)来编写和调试脚本。 3. 测试和调试:对编写的脚本进行测试和调试,确保其功能正常和可靠。可以逐步测试脚本的每个功能,修复可能出现的错误和问题。 4. 用户界面设计:如果需要,在脚本工具中添加一个用户界面,以方便用户使用和操作。可以使用VBScript提供的用户界面组件和控件,如文本框、按钮、对话框等。 5. 打包发布:将脚本工具打包成一个可执行文件(.exe)或者是使用微软的Windows脚本宿主(Windows Script Host)运行的脚本文件(.vbs)。确保工具的部署和使用简单便捷。 通过开发VBScript脚本工具,可以自动化执行一系列任务,提高工作效率和减少错误。例如,可以编写一个文件重命名工具,批量处理一些文件的命名;或者编写一个数据处理脚本,对大量数据进行筛选、整理和分析等。这些工具能够满足特定的需求,并且易于使用和定制化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值