QTP应用语言VBScript的基础知识

发表于:2015-12-24 11:05

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:水墨丹青    来源:51testing软件测试网采编

  要想学习QTP自动化测试,首要学习的就是VBSctipt,QtP的脚本语言是基于VBS的。
  首先认识一下VBS,它又称VBScript,是VisualBasicScript的简称、Vbscript可以通过windows脚本宿主调用com,因而可以使用windows操作系统中可以被使用的程序库,如可以使用MicrosoftOffice的库、WSH、AOM也可以使用其他程序和操作系统本身的库。
  通常学习一门变成语言时,第一句代码往往是声明变量,VBS也是一样,下面一起来看一个简单的例子吧:
  很多人都会问,VBScript需要用什么工具?答案:记事本
  Dimhelloworld'定义变量
  helloworld="welcometoVBScript!"
  msgbox(helloworld)
  以上代码可以写在txt记事本中,把记事本.txt的后缀名改为.vbs,如果后缀名没有显示出来,可以在开始->控制面板->文件夹选项中选择。
  首先我们来看看这段代码的意思:
  DIm声明变量的关键字,声明了一个变量为helloworld,第二句是为变量赋值,把welcometoVBScript!赋值给helloworld,
  msgbox是输出的函数,可以把已赋值的变量helloworld的字符串显示出来,后缀名改为.vbs运行出来的效果便是弹框显示welcometoVBScript!
  vbs的注释是“'”这样的,“单引号”
  注意:在VBS中不允许在声明变量的时候同时给变量赋值,但是允许在同一行代码中同时对两个变量进行赋值,,中间用逗号分隔。
  我们在来看看输入的函数inputbox,看一个例子
  dima,b,c  a=inputbox("请输入一个数字:")  b=inputbox("请输入另一个数字:")  c=a+b  msgbox(c)
  比如输入的两个数字为(2,3)猜猜看得出的结果是多少呢?5?喔~恭喜你答错了,正确答案是23。这是为什么呢?这个需要特别说明
  因为inputbox是字符串类型,要想把它变成数值类型的必须要转换类型:如下
  
dima,b,c  a=inputbox("请输入一个数字:")  b=inputbox("请输入另一个数字:")  a=int(a)  b=int(b)  c=a+b  msgbox(c)
  把a和b转换成int类型的,这样输出的msgbox(c)结果就等于5了。
  操作符:
  在VBS运算符中,加减乘除都是常用的符号,乘是^,取模是Mod,在比较操作符中大于、小于、等于都和常用的符号是一致的,不等于是"<>"这样的,要注意。
  循环语句:
  在if-then语句中,语法如下:
  if条件then
  处理条件的语句
  endif
  语法就放在这了,我们来写一个例子看看效果
  dima,b
  a=10
  b=8
  ifa>bthen
  magbox(a大于b)
  endif
  这就是一个简单的if语句了,是不是很简单呀,当一个只有条件的时候可以这样写,那有多个if条件语句改怎么办呢?也很简单,
  只需要在基本形式中添加单行语句else即可语法如下:
  if条件then
  处理条件的语句
  elseif条件then
  处理条件的语句
  else
  处理条件的语句
  endif
  endif作为循环的结束,没有它程序是跑不起来的,千万不要忘了要以endif结尾!
  还有一种循环语句:SelectCase形式为:
  SelectCase变量名
  Case条件值
  处理条件语句
  Case条件值
  处理条件语句
  CaseElse
  处理条件语句
  EndSelect
  根据语法我们可以写一个简单的例子,如下:
  dima'声明一个变量
  a=inputbox("请输入一个1到3的数字")'输出变成大写的1到3
 
 selectcasea  case1  msgbox("壹")  case2  msgbox("贰")  case3  msgbox("叁")  caseelse  msgbox("你输入的数字不在规定的范围内!")  endselect
  这个就没什么需要好解释的了,输入除1到3以外的数字都会执行caseelse里面的处理条件语句!
  循环控制语句:
  使用循环控制语句之前,需要对循环条件进行判断:
  1,循环次数是固定的,使用For-Next语句,语法如下:
  for计数器变量=开始计数值to最后计数值
  执行循环体
  next
  我们写个小小的程序看看
  
dima  fora=1to5  msgboxa  next
  循环从1开始到5结束,msgbox会执行5次。
  2,使用do...while语句,例子如下
  
DimCount:Count=5'定义一个变量  DoWhileCount<>0'当Count变量为0时,停止循环  MsgBoxCount  Count=Count-1  IfCount=2Then'判断Count变量值是否为2,如果是则退出循环  Exitdo  EndIf  Loop  MsgBox"循环结束"
  这个例子中包含了2个知识点,第一个就是我要说的do-while循环控制语句,当Count变量为0时,、就停止循环
  Exitdo是跳出循环的意思,当满足条件就直接退出循环。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号