[QTP] 描述性编程
2014-03-29 16:24
267 查看
1. 使用描述性编程的时机
录制方式的测试脚本创建是最简单和快捷的测试脚本开发方式,但是它太依赖测试对象库,有时会有一些问题。比如相同的元素,部分属性(比如名称、标题等)是动态产生的,那么在回放脚本中会导致找不到对象。如果用描述性编程编写的测试脚本,QTP会使用测试脚本中给出的对象描述来查找对象,查找的不是对象库,而是与测试程序运行时QTP为其创建的临时测试对象版本进行匹配,例如:
Browser("title:=百度一下*")这里通过正则表达式来匹配Browser的标题,即使窗口是动态生成的,但标题都是以“百度一下”开头,所以可以用这个方式匹配所有标题以“百度一下”为开头的Browser对象。也可以组合几个属性来标识控件,例如:
Browser("title:=百度一下*", "index:=0")
2. 描述性编程的使用方法
这种直接描述的方式的一般使用格式如下:
TestObject("ProName1:=ProValue1", "...", "ProName2:=ProValue2")通过直接指定测试对象的一个或多个PropertyName来描述控件,需要注意的是,属性和属性值之间要用":="分隔。
QTP还提供了一个Description对象,用于返回对象包含的属性,例如:
Set MyDescription = Description.Create(); MyDescription("title").Value="百度一下*" MyDescription("index").Value=0 Browser(MyDescription)另外还可以使用ChildObjects方法来获取某个父对象下面的所有子对象,例如:
Set childObjects = Browser("title:=百度一下*", "index:=0").ChildObjects() msgBox childObjects.Count
3. 用编程方式创建检查点
通过编程方式创建检查点,对于不能使用普通检查点对象的情况来说会非常有用。比如需要检查的对象属性没有存储在对象库中,仍然可以自己创建检查点,把检查的结果写入测试结果中。
GetROProperty用来获取控件动态属性,例如:
If Browser("title:=百度一下*", "index:=0").GetROProperty("openurl") = "about:blank" Then Reporter.ReportEvent micPass, "CheckBrowser = PASS ", "测试通过" End If
相关文章推荐
- 在QTP中使用描述性编程(实例)
- 【软件测试自动化-QTP NOTE 8】 == 描述性编程(Descriptive Programming)-Finial ==
- QTP-描述性编程
- QTP中使用描述性编程
- QTP描述性编程介绍
- QTP描述性编程简介与Java CS程序实例
- 在QTP中使用描述性编程
- QTP 描述性编程 VS 录制
- QTP的描述性编程与正则表达式
- QTP自动化测试框架:第七章 主要方法介绍(描述性编程引入框架)
- QTP描述性编程两种方式
- [QTP]描述性编程
- 【软件测试自动化-QTP NOTE 5】 == 描述性编程(Descriptive Programming)-1st ==
- QTP描述性编程
- qtp中描述性编程
- QTP中的描述性编程
- 【软件测试自动化-QTP系列讲座 22】 == 描述性编程 ==
- 【软件测试自动化-QTP NOTE 7】 == 描述性编程(Descriptive Programming)-3rd ==
- QTP_描述性编程总结1
- QTP描述性编程入门介绍