QTP vbs学习

1、helloworld

Dim helloworld
helloworld = "QTP自动化测试技术导航"
mxgbox helloworld
 
2、显示申明变量
Option Explicit     '显示申明变量
Dim helloworld
helloworld = 'QTP自动化测试技术导航"
msgbox helloworld
 
申明显示的优点 :
1、是脚本编写人员的良好习惯
2、减少错误发生,提高效率,大型项目更加显著
3、减少资源的占用
4、代码提示
 
VBS基础知识的提炼
一、vbs的基本语法:
1、变量:需要使用关键字Dim来告诉VBScript创建一个变量,并将变量名称跟在其后,申明个相同类型的变量,应该使用逗号(,)隔开
2、注释:所有单引号(')后面的内容被解释成注释
3、VBScript在定义时只有一种变量类型,在实际使用中需要使用类型转换函数来将变量转换程相应的变量类型
Cbool函数将变量转成布尔值
Cbyte函数将变量转成0~255的整数
Ccur函数、Cdbl函数和Csng函数将变量转成浮点数值,前者只精确到小数点后4位,后2者更加精确
Cdate函数将变量转成日期值
Cint函数和Clng将函数转成整数,后者的范围比牵着要大得多
Cstr函数将变量转成字符串
二、数组
Dim array(10)      '定义10个数据的数组 ,数组下标从0开始【0-9】
注意:在改变数组大小时,数组的数据会被破坏,使用关键字 preserve来保护数据。如:
ReDim preserve array(9,2)     '构造 ReDim”空格“preserve”空格“array”括号“个数”逗号“维数”括号“
三、操作符
乘方:^
取摸:mod
不等于:<>
逻辑运算符: 和 and ,非 not,  或 or
四、条件语句 if...then.. 和Select Case 两种形式
1、If 条件 Then
          处理条件的语句
     End If
和 
     If 条件 Then
          处理条件的语句
     Else If 条件 Then    
          处理条件的语句
     End If
 
2、Select Case 语句
     Select Case 变量
         Case 条件值
               处理条件
         Case 条件值
               处理条件
          Case Else
               处理条件语句
     End Select
 
五、循环控制语句
1、For……Next循环
2、For……Each循环
3、Do……While循环
4、Do……Until循环
5、While循环
 
循环条件进行验证
For 计数器变量 To 最后计算值
     执行循环体
Next
 
数组或对象元素每一个元素进行判断
For Each 循环计数器变量 In 要查看的对象或数组
     执行处理语句
Next
 
条件满足执行循环体
Do While 条件
     执行循环体
Loop

条件不满足执行循环体
Do Until 条件
     执行循环体
Loop
 
VBS常见错误:
1、运行时错误
2、On、Error、Resume、Next语句可以防止VBS脚本在发生错误时停止运行
3、VBS中的"Err对象" ,它有2个方法Clear,Raise,5个属性:description、helpcontext、helpfile、number、source、err对象不引用实例,可以直接使用。如:
 
On Error Resume Next
     a = 5
     b = 0
     c = a/b
If err.number <>0  Then
     WScript.echo     err.number &"/"& err.description &"/" err.source
End If
 
六、常用函数解析
Date:返回当前系统日期;语法: Dim myDate=Date
Now:返回当前系统时间;语法:Dim myNow=Now
DateDiff:返回两个日期之间的间隔;语法:DateDiff(interval, date1, date2)
Left:返回字符串最左边指定字符;语法:Left(string, length)
Right:返回字符串最右边指定字符;语法:Right(string,length)
Len:返回字符串内字符的数目;参数string,若string参数内包含null,则返回null
 
Mid:从字符串中返回指定数目的字符;语法:Mid(string, start[,length])
例如:
Dim MyVar
MyVar = Mid("VB Script is fun!",4, 6)
结果显示:Script    
 
LTrim、RTrim与Trim:返回不带前导空格、后续空格、所有空格;语法 *Trim(string)
使用案例:
     If a="qtp" Then
          ...
     Else
          ...
     End If
若a="_qtp_",_代表空格,可能会验证失败,遇到类似情况,完全可以使用Trim来取代
 
Replace:返回字符串,其中指定数目的字符串可能被替换。
语法:Replace(expression, find, repalcewith, compare[, count[, start]]])
expression:表达式,包含要替换的字符串
find:被搜索的字符串
replacewith:用于替换的字符串
count:执行子字符串替换的数目
compare:计算子字符串时使用的比较类型的数值
 
七、Funton VS Sub 
1、Sub过程:Sub其实就是一个过程复用,没有返回值 ; 语法:Sub 和 End Sub
Call QtpSub     '调用sub
Sub QtpSub     
     msgbox "我是sub"
End Sub
 
2、Function函数:可以重复条用,有返回值和参数:语法:Function 和 End Function
Dim myName
myName = QtpFunction("QTP自动化测试技术导航")
msgbox myName
 
Function QtpFunction(tName)
     QtpFunction = tName
End Function
 
八、获取对象引用GetRef方法
GetRef:函数指针的作用,指向了在指定时事件发生时要执行的过程的地址。例如:
Option Explicit
Dim new_helloworld
Funtion helloworld (content)
     Msgbox content
End Function
Set new_helloworld = GetRef("helloworld")    ''new_helloworld 获取helloworld函数
Call new_helloworld("QTP自动化测试技术导航")
 
九、类的简单应用
1、初始化和终结化的应用
class uer
     private sub class_initialize
     end sub
     private sub class_terminate
     end sub
end class
 
2、get 和set的应用
class user
     private s_name
     private s_age
     
     public property get age
          age = s_age
     end property
 
     public property get  name
          name = s_name
     end property
 
     public property  let name(new_name)
          s_name = new_name
     end property
 
     public property let age(new_age)
          s_age = new_age
     end property
end class
 
这个同C#里面的实体的属性的定义,只是语法结果不一致
 
十、VBS和SendKeys 与项目结合的妙用
作用:模拟键盘操作,将一个或多个按键指令发送到指定windows窗口来控制应用程序运行,其定义格式:object.SendKeys string
其中"obejct"表示WshShell对象;"string"表示要发送的按键指令字符串,需要放在引文引号中
按键指令字符串分类:
1、基本键
2、特殊键:shift、Ctrl、Alt 3个控制组合键。SendKeys使用特殊字符来表示
Shift:WshShell.SendKeys"+"
Ctrl:WshShell.SendKeys"^'
Alt:WshShell.SendKeys"%"
Space:WsShell.SendKeys""
←: WshShell.SendKeys"{Right}"
↑:WshShell.SendKeys"{Up}"
F1:WsShell.SendKeys"{F1}"

转载于:https://www.cnblogs.com/hujianping/p/4597647.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值