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}"

QTP vbs学习的更多相关文章

  1. VBS 学习

    VBS其他功能 获取系统用户名 DimWshNetwork Set WshNetwork =CreateObject("WScript.Network") strTaccount ...

  2. VBS学习日记(一个) 开始了解

    Vbs 一个 Windows 脚本,其代表 :Microsoft Visual Basic Script Editon.( 微软可视化BASIC 脚本版),VBS 是 Visual Basic 的的一 ...

  3. qtp:vbs基础教程

    ◎Vbs脚本编程简明教程之中的一个-为什么要使用Vbs?  在Windows中,学习计算机操作或许非常easy,可是非常多计算机工作是反复性劳动,比如你每周或许须要对一些计算机文件进行复制.粘贴.改名 ...

  4. QTP基础学习(一)安装目录介绍

    上一篇介绍了QTP 10 安装,安装完成后就可以看到文件的目录了,这里主要介绍以下几个目录及作用. 简单介绍部分目录 1.addins:插件包 2.bin目录:可执行程序,这里存储了很多配置文件.运行 ...

  5. QTP测试学习笔记

    QuickTest Professional(简称QTP)功能自动化测试,原属于Mercury Interactive公司产品,2006年7月被惠普公司收购了,通过安装文件目录可以看到,都是默认放在C ...

  6. QTP基础学习(二)启动与设置

    1.启动QTP选择要求的Add-in 默认带有3个Add-in,之后可以安装其他的Add-in,如.net的Add-in 2.设置QTP的选项 点击Tools-Options,弹出如下框: 3.建立记 ...

  7. VBS学习

    简介 VBS windows脚本 Microsoft visual basic script editionVBS 是visual basic的一个抽象子集,系统内置,不编译为二进制文件,(由host ...

  8. vbs学习笔记1——判断文件和文件夹是否存在

    首先分享一个“VBS脚本常用经典代码收集”,这里面关于vbs很丰富的内容. 所有vbs脚本都需要保存为.vbs形式才可以运行 FileSystemObject Object的所有方法参考:http:/ ...

  9. VBS学习:流程控制语句判断结构

    一.数值运算: 1) Dim a,b,c a=inputbox("a是:","输入半径") b=Inputbox("b是:","输 ...

随机推荐

  1. MVVM Command Binding: InvokeCommandAction v.s. EventToCommand

    This gives you the ability to create a trigger on an event and bind it to an ICommand on the view mo ...

  2. 最长递增子序列 O(NlogN)算法

    转自:点击打开链接 最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS. 排序+LCS算法 以及 DP算法就忽略了,这两个太容易理解了. 假设存在一个 ...

  3. Window.document对象 轮播练习

    Window.document对象 一.找到元素:     docunment.getElementById("id"):根据id找,最多找一个:     var a =docun ...

  4. 阶乘之和--nyoj91

    描述 给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如果是,则输出Yes,否则输出No: 输入 第一行有一个整数0<m<10 ...

  5. Empire C:Basic 2

    作为人与计算机沟通的媒介,C语言给我们呈现了:printf.scanf.以及缓冲区. 1.printf("%d",a) %d:d是decimal base(十进制)的开头字母,意思 ...

  6. LR之Java Vuser

    虽然LR对C有较好的支持,但有时使用Java Vuser会更方便,以下描述通过LR来编写Java脚本以及调用jar包的基本步骤. 1.安装配置java环境  LR的java vuser脚本的执行依赖于 ...

  7. Different Approaches for MVCC

    https://www.enterprisedb.com/well-known-databases-use-different-approaches-mvcc Well-known Databases ...

  8. Android 更新sdk

    http://blog.csdn.net/xiao_ping_ping/article/details/45621663 不FQ意味着不能直接到android官网下载android SDK,但是国内有 ...

  9. [archlinux][hardware] 查看SSD的使用寿命

    因为最近把16GB的SSD做成了HDD的cache,所以比较关系寿命问题. 使用smartctl工具. 参考:https://www.v2ex.com/t/261373 linux 下面只有 smar ...

  10. yii1 render方法解析(记录下)

    先判断主题(themes)中是否有相对应的文件,如果没有变换file为protected/views路径下的文件,如果有文件则变换为themes路径下的文件.然后,如果加载了viewrender模块( ...