QTP脚本无法识别组合框对象

时间:2012-09-13 04:57:49

标签: extjs combobox qtp

我的项目完全用ExtJs语言开发(不是用html)。

请注意以下代码,并附上我的窗口截图。我想要选择组合框项(activePoll server1),如图所示。请建议。

Option explicit
Dim bro,url
bro="C:\Program Files\Internet Explorer\iexplore.exe"
url="-------------------------------------------------------"
invokeapplication(bro&" "&url)
With Browser("Certificate Error: Navigation")
With   .Page("Certificate Error: Navigation")
            .Link("Continue to this website").Click
End With
End With
With Browser("Title:=WebiPer.*.*")
With    .Page("title:=WebiPer.*")
    .WebEdit("name:=userName").Set "Sai"
    .WebEdit("name:=password").Set "Admin123"
       .WebList("name:=loginType").Select "ManagementApps"
    .WebButton("name:=Login").Click
End With
End With
With Browser("Title:=APS Configuration Client")
With    .Page("title:=APS Configuration Client")
        .WebEdit("name:=Image").Set"activePollServer1"
End With
End With

enter image description here

3 个答案:

答案 0 :(得分:0)

Sai,考虑定义一个虚拟对象。您可以在(工具>虚拟对象>新虚拟对象)下找到它。在这里,您可以手动将无法识别的对象映射到QTP知道的标准对象。 Web加载项附带的预定义对象中应该有一个组合框或列表框。

如果不起作用,请尝试安装 Web可扩展性加载项。它扩展了对自定义Web控件和Dojo和Ajax等工具包的支持。它也应该能够处理ExtJS。

答案 1 :(得分:0)

我遇到过这个问题,我们所做的就像下面这样。

如果Dropdown标识为WebEdit,那么

B().P().WebEdit().click
Sendkeys {"DOWN"}
Sendkeys {"DOWN"}
Sendkeys {"ENTER"}

对于我们来说,下拉列表被识别为WebEdit,因此我们必须首先点击它,然后必须使用键盘输入来选择值。

请告诉我

答案 2 :(得分:0)

通常在ExtJs中,开发人员不直接使用组合框,他们为数据选择分配了另一个元素,并且只有在单击WebEdit时才能看到该元素,因此请执行以下步骤选择所需的项目选择

step1)从WebEdit元素的属性中找到名为“aria-owns”的属性名称,并将其值传递给变量ex:varId =“list-1234”

step2)点击WebEdit

step3)单击元素浏览器()。页面()。WebElement(“html id:=”& varId).WebElement(“innertext:=”& name of要选择的项目。单击

如果直接点击不起作用,请使用“ Setting.WebPackage(”ReplayType“)= 2 ”选项