常用ROBOT函数详解

 

                        常用ROBOT函数

                                                           ----------ttytt

07.06.05

 

1.获取/设置对象属性语句

SQAGetProperty(重点函数),SQASetProperty

 

SQAGetProperty--------------取值

格式定义: starus%=SQAGetProperty(recmethod$,ProPerty$,value)

其中:

recmethod$----是如何读取你所要要得的控件的值的方法,在recmethod中,经常需要使用type=来区分控件的类型,或者是使用符号来表示控件所在的层次关系

ProPerty$------是你所要读取的属性的名称,它是区分大小写

Value ---------是个变量,是用来存放你读取的控件的属性值

 

Status%=0    表示SQAGetProperty语句正确,能够成功读取属性的值

Status%=1002 表示recmethod$的语法是错误的

Status%=1003 表示你所需的控件没有找到,语法是对的

Status%=1005 表示读取的属性没有找到

 

备注:(此函数还得借助robot的辅助工具toolsàinspector进行分析是否可以使用SQAGetProperty抓取值)

 

 

SQASetProperty():

 

 

2.数据池语句

SQADatapoolOpen, SQADatapoolFetch, SQADatapoolValue, SQADatapoolRewind, SQADatapoolClose,

 (里面的内容比较多,有时间慢慢细述)

参照下例:

 

'$Include "sqautil.sbh"

Sub Main

    Dim Result As Integer

    Dim sum as string

    dim dp   as Variant

    dim nam1 as string

    dim i as integer

    StartApplication "D:\WINDOWS\system32\calc.exe"

   'ttytt数据池的提取与赋值

    dp=SQADatapoolOpen("testpools")

    '打开数据池,testpools个数据池是预先按照上述规范做好的

   for i=1 to 5

   Call SQADatapoolFetch(dp)

   '从数据池中读取记录

   Call SQADatapoolValue(dp,1,nam1)

   Window SetContext, "Caption=计算器", ""

    InputKeys nam1 +"{ENTER}"+"{+}"

    Result = LabelVP (CompareNumeric, "Text="& sum &".", "VP=Alphanumeric;Value="& sum &".")

     next i

    Call SQADatapoolClose(dp)

    Window CloseWin, "", ""

    end sub

3.日志语句

SQALogMessage-----记录日志,分三种情况,通过,错误,阻塞及NONE(这个不常用)

用法:

 SQALogMessage sqaPass, "通过", ""

 

 SQALogMessage sqaFail, "阻塞", ""

 

SQALogMessage sqaWarning, "错误", ""

 

 

4.等待延迟语句

Delayfor, SQAWaitForObject, SQAFindObject, SQAWaitForPropertyValue

例:

 Delayfor(分秒数)-----延迟时间(1000为一秒)

备注:通常执行比较复杂的操作的时候,需要缓冲时间,所以这个Delayfor函数会变得非常有用.

 

5. 字符串相关语句

GetField,Left,Len,Instr, InstrB, Mid, MidB, Right, Str, Strcomp, Option Compare, Trim, LTrim, RTrim,

具体用法如下:(其中$代表字符串,%代表整数,若函数不知道如何使用,选中函数按F1查看帮助文档)

 

GetField(String$,field_number%,separator_char$) ---根据基值分段并取相应的字段值

 

 String$   字段串

separator_char$ 分段基值,在String$中参照这个基值进行分段,

例:

getfield(“cabcaet”,2,”a”)则其中的”a”字符把该字符串分成三段,第一段是c 第二段是bc 第三段et .

field_number%是指定取被separator_char$基值分成的段数.(上例中的2就是指取被”a”分成的第二段)

 

left   -----------根据指定长度复制该字符位数(从左向右)

定义格式 :

string$(返回值为字符串)=left(String$,length%)

例: left(“123456789”,4) =”1234”(指定长度为4,复制前四位字符)

 

Right()--------------根据指定长度复制该字符倒数位数(从右向左)

 定义格式 :

string$(返回值为字符串)=right(String$,length%)

例: right(“123456789”,4) =”6789”(指定长度为4,复制末四位字符)

 

len----------------取字符串的长度

 

定义格式 :

length%(返回值为整数)=len(String$)

例: len(“123456789”) =9(取字符串的长度)

 

mid-----------从字符串的某个位置截取字符长度

 

定义格式 :

string$(返回值为字符串)=mid(String$,start%,length%)

例: mid(“123456789”,3,3) =”345”(从第3个位置截取3位)

 

instr------------从字符串的某个位置开始查找字符(或字符串)的位置

   定义格式 :

string$(返回值为字符串)=instr(start%,String1$,String2$)

例:

 instr(3,“1423456789”,”4”) = 5(从第3个位置开始查找字符”4”,在第5个位置找到)

 

cstr--------------把整数转化为字符串(这个函数使用率极高,因为在robot中,很多值都是用字符串的形式来记录的,而字符串是不可以进行循环的,所以就需要把整数转化为字符串)

例:

    Cstr(5)=”5”   等于把整数5转化为字符串”5”

 

以上函数均为主要常用函数.

6.调用程序语句

StartApplication, SQAShellExecute

 

7.调用其他脚本语句

Call,CallScript,

8. 输入/输出语句

Open, Close, Get, Put

 

9.错误处理语句

On Error, Error, Resume, GoTo, Erl

 

10.常用控制语句(略)

If…Then, Select…Case, Do…Loop, For…Next, While…Wend, Stop, Exit, Goto, On…Goto

例:

for int I=0 to5

/***循环操作代码***/

next i

11.交互语句

MsgBox, InputBox, PasswordBox

 

Msgbox-------------弹出消息

例:

   msgbox “操作成功”   或msgbox 整数(该函数用于脚本错误调式时用的比较多)

 

InputBox-------------弹出输入框

例:

String na=inputBox(“请输入用户名”) 弹出输入框,并通过输入的内容赋值给变量na

     

PasswordBox---------弹出密码输入框(输入内容会加密显示)

例:

 String pwd=PasswordBox(“请输入密码”)

12.验证点语句

AnimateControlVP, CalendarVP, CheckBoxVP, CheckedListBoxVP, ClipboardVP, ComboBoxVP, ComboEditBoxVP, ComboListBoxVP, DataGridVP, DataWindowVP, DateTimeVP, EditBoxVP, FileVP, GenericObjectVP, GroupBoxVP, HeaderVP, HotKeyControlVP, HTMLVP, HTMLActiveXVP, HTMLDocumentVP, HTMLHiddenVP, HTMLImageVP, HTMLLinkVP, HTMLTableVP, IPAddressVP, JavaCanvasVP, JavaListViewVP, JavaMenuVP, JavaObjectVP, JavaPanelVP, JavaPopupMenuVP, JavaSplitPaneVP, JavaSplitterVP, JavaTableVP, JavaTableHeaderVP, JavaTreeVP, JavaWindowVP, ListBoxVP, ListViewVP, ModuleVP, PagerVP, ProgressBarVP, PSGridVP, PSMenuVP, PSNavigatorVP, PSPanelVP, PSSpinVP, PSTreeHeaderVP, PSTreeVP, PushButtonVP, RadioButtonVP, RebarVP, RegionVP, RichEditVP, ScrollBarVP, SpinControlVP, StatusBarVP, TabControlVP, ToolbarVP, TrackbarVP, TreeViewVP, WebSiteVP, WindowVP,

另附验证点文档:

https://files.cnblogs.com/ttyttt/robot_Verification.rar

 

备注:快捷键  

F5-------à执行脚本

F4-------à调试错误,显示脚本错误所在位置

F9-------à设置分步执行点,可以分步进行操作

F11-----à 执行中断               

posted on 2007-06-05 16:10  飞儿  阅读(2873)  评论(2编辑  收藏  举报