QTP描述性编程

发表于:2011-04-21来源:不详作者:领测软件测试网采编点击数: 标签:
在QTP中使用描述性编程是一个提高QTP脚本利用率的很好的方式。通常QTP是通过对象库来识别不同的对象,而描述性编程是QTP另外一种能够识别对象的途径,它不依赖于对象库,通过增加一些对象的描述来识别对象的。 说明:本例子是以Flight飞机订票系统的登陆界面

  在QTP中使用描述性编程是一个提高QTP脚本利用率的很好的方式。通常QTP是通过对象库来识别不同的对象,而描述性编程是QTP另外一种能够识别对象的途径,它不依赖于对象库,通过增加一些对象的描述来识别对象的。

  说明:本例子是以Flight飞机订票系统的登陆界面为测试页面进行描述的。

  步骤一:录制脚本

  Dialog("Login").WinEdit("Agent Name:").Set "Holly"

  Dialog("Login").WinEdit("Password:").SetSecure "46ef0dc7efe5834c73673898279af1204fea51a7"

  Dialog("Login").WinButton("Cancel").Click

  共录制3步操作,输入Agent Name, Password, 点击Cancel按钮

  步骤二:初级描述性编程

  Dialog("Regexpwndtitle:=Login").WinEdit("Attached text:=Agent Name:").Set "zhangsan"

  Dialog("Regexpwndtitle:=Login").WinEdit("Attached text:=Password:").Set "mercury"

  Dialog("Regexpwndtitle:=Login").WinButton("Class Name:=WinButton", "text:=Cancel").C

  在这里要注意有三点:

  1)如果需要两个以上特性来描述一个对象,需要使用逗号(,)对描述性语言进行分割

  2)使用:=来连接属性和属性值,并且:=两边不能有空格

  3)使用SPY查看对象的属性名和属性值(Tools -> Object Spy)

  步骤三:描述性编程提高

  Dim descEditLogin

  Set descEditLogin = Description.Create()

  descEditLogin("Class Name").Value = "Dialog"

  descEditLogin("Regexpwndtitle").Value = "Login"

  Dialog(descEditLogin).WinEdit("Attached text:=Agent Name:").Set "Holly"

  Dialog(descEditLogin).WinEdit("Attached text:=Password:").Set "Mercury"

  Dialog(descEditLogin).WinButton("Class Name:=WinButton", "text:=Cancel").Click

  在这里需要注意有两点:

  1)把经常使用到的对象定义为一个对象变量,方便以后调用,减少代码工作量和错误

原文转自:http://www.ltesting.net