UFT/QTP - 从 WebEdit 中的列表中提取值
UFT/QTP - Extract Values From List Within WebEdit
我试图在整个应用程序中捕获 WebList 元素中的所有列表项,但是,虽然下面的代码适用于 WebLists,但不适用于此 WebEdit。
当您单击 WebEdit 时,会出现一长串值(类似于 WebList),当您键入值时,列表会变短。这就是 WebEdit 的设置方式。
但是现在,如何获取此列表中的值?
这是我的 WebLists 代码:
代码
Set WebLink = Browser("browser").Page("page")
listval = WebLink.WebElement("xpath:= ((//*[contains(text(), 'Name')]))[1]/following::SELECT[1]").GetROProperty("all items")
listvalues = split(listval,";")
For j = LBound(listvalues,1) To UBound(listvalues,1)
'Print listvalues(j)
writeToTextFile(listvalues(j))
Next
ExitTest
简短的回答是:这取决于实施。
长篇:
组合框没有通用的小部件(就像编辑字段或列表/选择、单选按钮等一样)=> 没有通用的解决方案,只有指南。
您需要监视出现在组合框中的那些对象,查看它们的 XPath 和/或其他属性(例如,它们所属的 css 类名),然后执行第二个查询以选择所有此类物品。之后,您必须提取所选元素的值;这可能就像获取 innertext 属性 一样简单,或者您可能需要更深入地挖掘 HTML 层次结构。
您需要特别注意同步(等待所有搜索结果元素出现)、过滤(在您的网页上使用 XPath、描述对象和 ChildObjects 方法)然后提取(获取 属性 /包含该 WebElement 的实际值的元素)
再说一次:这些组合框解决方案不是通用的,因此在没有看到它们的代码的情况下,可以提供给您的是在大多数情况下都应该适用的通用指南。 (您需要熟悉 Web 编程和 UFT 框架/机器人)
我试图在整个应用程序中捕获 WebList 元素中的所有列表项,但是,虽然下面的代码适用于 WebLists,但不适用于此 WebEdit。
当您单击 WebEdit 时,会出现一长串值(类似于 WebList),当您键入值时,列表会变短。这就是 WebEdit 的设置方式。
但是现在,如何获取此列表中的值?
这是我的 WebLists 代码:
代码
Set WebLink = Browser("browser").Page("page")
listval = WebLink.WebElement("xpath:= ((//*[contains(text(), 'Name')]))[1]/following::SELECT[1]").GetROProperty("all items")
listvalues = split(listval,";")
For j = LBound(listvalues,1) To UBound(listvalues,1)
'Print listvalues(j)
writeToTextFile(listvalues(j))
Next
ExitTest
简短的回答是:这取决于实施。
长篇: 组合框没有通用的小部件(就像编辑字段或列表/选择、单选按钮等一样)=> 没有通用的解决方案,只有指南。
您需要监视出现在组合框中的那些对象,查看它们的 XPath 和/或其他属性(例如,它们所属的 css 类名),然后执行第二个查询以选择所有此类物品。之后,您必须提取所选元素的值;这可能就像获取 innertext 属性 一样简单,或者您可能需要更深入地挖掘 HTML 层次结构。
您需要特别注意同步(等待所有搜索结果元素出现)、过滤(在您的网页上使用 XPath、描述对象和 ChildObjects 方法)然后提取(获取 属性 /包含该 WebElement 的实际值的元素)
再说一次:这些组合框解决方案不是通用的,因此在没有看到它们的代码的情况下,可以提供给您的是在大多数情况下都应该适用的通用指南。 (您需要熟悉 Web 编程和 UFT 框架/机器人)