VBS基础知识整理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VBScript
VBScript 数据类型
•VBScript 只有一种数据类型,称为Variant。Variant是一种特殊的数据类型,根据使用的方式,它可以包含不同类别的信息。因为Variant是VBScript 中唯一的数据类型,所以它也是VBScript 中所有函数的返回值的数据类型,包括Empty,Null 和Error 三种特殊类型。
•最简单的Variant可以包含数字或字符串信息。Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,如果使用看起来象是数字的数据,则VBScript 会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则VBScript 将按字符串处理。也可以将数字包含在引号(" ") 中使其成为字符串。
•可以使用转换函数来转换数据的子类型。另外,可使用VarType()函数返回数据的Variant子类型。
VBScript 变量
•声明变量
–声明变量的一种方式是使用Dim语句、Public语句和Private语句在脚本中显式声明变量。例如:Dim UserName
–声明多个变量时,使用逗号分隔变量。例如:Dim Top, Bottom, Left, Right
–另一种方式是通过直接在脚本中使用变量名这一简单方式隐式声明变量。这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行脚本时出现意外的结果。因此,最好使用Option Explicit语句显式声明所有变量,并将其作为脚本的第一条语句。
•命名规则
–第一个字符必须是字母。
–不能包含嵌入的句点。
–长度不能超过255 个字符。
–在被声明的作用域内必须唯一。
VBScript 常数
•常数是具有一定含义的名称,用于代替数字或字符串,其值被创建后就不允许再被改变。VBScript 定义了许多内部常数。例如:
MsgBox"提示信息:" & vbCrLf& "操作成功", vbInformation, "Title"
•创建常数
–使用Const语句在VBScript 中创建用户自定义常数。使用Const语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们赋原义值。例如:
Const conUserName= ”username”
Const PI = 3.1415926535897
Const conOlympicDate= #08/08/08#
–最好采用一个命名方案以区分常数和变量。这样可以避免在运行脚本时对常数重新赋值。例如,可以使用“vb”或“con”作常数名的前缀,或将常数名的所有字母大写。将常数和变量区分开可以在开发复杂的脚本时避免混乱。
•常用常数
vbCr 回车符vbLf 换行符
vbCrLf 回车符与换行符。vbNewLine 新行字符
VBScript条件语句
•使用条件语句和循环语句可以控制脚本的流程。使用条件语句可以编写进行判断和重复操作的VBScript 代码。在VBScript 中可使用以下条件语句:
–If...Then...Else语句,条件为True时运行语句,例如:
If myDate < Now
Then
myDate = Now '单行不需要加End If
条件为True 和False 时分别运行某些语句。
–Select Case语句,对多个条件进行判断,例如:
Select Case iValue
Case1 MsgBox "Hello World!"
Case2 MsgBox "Hello Software Testing!"
Case Else MsgBox "Hello 51Testing!" ‘case else是vbs的默认default选项
End Select
VBScript循环语句
•循环用于重复执行一组语句。循环可分为三类:一类在条件变为False之前重复执行语句,一类在条件变为True 之前重复执行语句,另一类按照指定的次数重复执行语句。
•在VBScript 中可使用下列循环语句:
•Do...Loop:当(或直到)条件为True时循环。
Do While isNum > 10 Do
isNum = isNum - 1 isNum = isNum - 1
Loop Loop While isNum > 10 ‘VBS中,不等于为“<>”
•While...Wend:当条件为True时循环。
•For...Next:指定循环次数,使用计数器重复运行语句。
•For Each...Next:对于集合中的每项或数组中的每个元素,重复执行一组语句。
‘在QTP描述性编程中,使用ChildObjects()函数实现为页面中的所有复选框选中
Dim obj_chkDesc
Set obj_chkDesc = Description.Creat
obj_chkDesc(“html_tag”).value = “INPUT”
obj_chkDesc(“type”).value = “checkbox”
Dim allCheckboxes,singleCheckbox
Set allCheckboxes = Browse(“borwser”).Page(“page”).ChildObjects(obj_chkDesc)
For Each singleCheckbox in allCheckboxes ‘in即为singleCheckbox进行赋值singleCheckbox.Set“ON”
Next
VBScript中的With语句
•对一个对象执行一系列的语句。
•语法:With object statements End With例如:
With MyLabel
.Height = 2000
.Width = 2000
.Caption = "这是MyLabel"
End With
•当程序一旦进入With块,object 就不能改变。因此不能用一个With语句来设置多个不同的对象。
•With语句可以嵌套
VBScript 过程(函数类型)
•在VBScript 中,过程被分为两类:Sub过程和Function过程。
–Sub过程Sub过程是包含在Sub和End Sub语句之间的一组VBScript 语句,执行操作但不返回值。Sub过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Sub过程无任何参数,则Sub语句必须包含空括号()。
–Function过程Function 过程是包含在Function 和End Function 语句之间的一组VBScript 语句。Function 过程与Sub 过程类似,但是Function 过程可以返回值。Function 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果Function 过程无任何参数,则Function 语句必须包含空括号()。Function 过程通过函数名返回一个值,这个值是在过程的语句中赋给函数名的。Function 返回值的数据类型总是Variant。
•Sub语句
–声明Sub过程的名称、参数以及构成其主体的代码。
[Public[Default] | Private] Sub name[(arglist)]
[statements]
[Exit Sub]
[statements]
End Sub
•Function语句
–声明Function过程的名称、参数以及构成其主体的代码。
[Public[Default]| Private] Function name[( arglist)]
[statements]
[name= expression]
[Exit Function]