一、什么时候使用描述性编程
在测试过程中,有些界面元素是动态出现或动态变化的,在录制的时候并没有添加到对象库中
二、描述性编程的运行原理
用描述性编程编写的测试脚本在运行时,QTP会使用测试脚本中给出的对象描述来查找对象,查找的位置不是对象库,而是与测试程序运行时QTP为其创建的临时对象版本进行匹配。
三、描述性编程的使用方法
一种是直接描述的方法
(1)对象库有对象时的写法
DiaLog(“Login”).WinEdit("Agent Name:").Set "mercury"
DiaLog(“Login”).WinEdit("Agent Name:").Type micTab
(2)对象库中没有对象时的写法
DiaLog("Login").WinEdit("attached text:= Agent Name:").Set "mercury"
表达式为:TestObject(“PropertyName1:=PropertyValue1”,“PropertyName2:=PropertyValue2”...)
另一种使用Description对象的方法:
Set myDesc = Description.Create()
myDesc("attached text").Vale = "Agent Name:"
DiaLog("Login").WinEdit("myDesc").Set "mercury"
四、描述性编程的特点:
如果在测试对象层次结构的某一点开始使用了描述性编程,则该测试对象层次结构下的后续测试对象都要使用描述性编程的方式来描述对象。(意思就是一级目录用例描述性编程,二级目录必须使用描述性编程)