欢迎来到天天文库
浏览记录
ID:38191286
大小:67.00 KB
页数:6页
时间:2019-05-25
《软件测试 描述性编程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、·systemutil.Run("C:ProgramFilesMercuryInteractiveQuickTestProfessionalsamplesflightappflight3a.exe")·setmydescription=Description.Create()·MyDescription("attachedtext").value="AgentName:"·MyDescription("windowid").value=3001·Dialog("text:=Login").WinEdit(Mydescription).set"lihongying
2、"·Setmycheckboxdes=description.create()·mycheckboxdes("checked").Value="OFF"·mycheckboxdes("height").Value="16"·SetCheckboxes=Window("text:=FlightReservation").Dialog("text:=OpenOrder").ChildObjects(mycheckboxdes)·'msgbox(Checkboxes.Count)·NoOfChildObjs=Checkboxes.Count·ForCounter=0toNoOfCh
3、ildObjs-1·Checkboxes(Counter).Set"ON"·Next·描述性编程概念·在录制脚本时,QTP会将被测试对象添加到对象仓库中,只要对象存在仓库中,我们就可以在专家视图中使用该对象进行手动添加脚本。·在QTP脚本中,不使用对象仓库或对象名称,也可以对被测程序中的对象进行操作。为了做到这一点,我们需要在QTP脚本中提供对象的属性及其值的列表。这就是编程性描述·描述性编程的应用范围:·当对象不存在于对象仓库之中,而我们又希望操作该对象时,编程性描述就非常有用。·如果有多个对象,它们具有某些相同的属性,通过编程性描述,我们可以在这些对象上进行相同的操作;·
4、某个对象的属性无法确定,需要在运行过程中指定,我们也可以使用编程性描述,来对该对象进行操作。例如:在一个页面有多个checkbox,你不能预知其个数,也不知道所有checkbox的准确描述,然而你希望选中所有的checkbox。在这种情况下,你可以使用编程性描述来解决。你只需要让QTP对所有描述为HTMLTAG=input,TYPE=checkbox的对象执行一个Set“ON”的操作即可·描述性编程方法:·在语句中直接列出对象的属性及值的列表;·使用Description对象,为Description对象添加属性及值的集合,然后在语句中直接使用Description对象的名称
5、即可·使用第一种方法要简单一些,但是在很多情况下,第二种方法更显得功能强大并更有效率·描述性编程第一种方法:·在语句中不使用对象的名称,而是使用对象的描述(指定多对property:=value值)·通常语法如下:·TestObject(“PropertyName1:=PropertyValue1”,“…”,“PropertyNameX:=PropertyValueX”)·TestObject:指的是测试对象的类名·PropertyName:=PropertyValue:指的是测试对象的属性及值。每对property:=value用双引号标记,并用逗号隔开。·注:proper
6、tyvalue可以是变量。一般情况下如果一个属性无法识别,就多加几个属性·录制:·Dialog("Login").WinEdit("AgentName:").Set"lihongying"·Dialog("Login").WinEdit("AgentName:").TypemicTab·Dialog("Login").WinEdit("Password:").SetSecure"47c51d8a0749b7747097e2e9b7b51f4d80ad6cc0"·Dialog("Login").WinButton("OK").Click·Window("FlightReserv
7、ation").WinButton("Button").Click·Window("FlightReservation").WinObject("DateofFlight:").Type"101010"·Window("FlightReservation").WinComboBox("FlyFrom:").Select"Denver"·Window("FlightReservation").WinComboBox("FlyTo:").Select"Frankfurt"·Window("FlightRes
此文档下载收益归作者所有