无法在UFT中为网页识别Web对象?

时间:2018-03-16 08:22:24

标签: automation hp-uft browser-automation

SystemUtil.Run "iexplore.exe", "https://www.jetairways.com/EN/IN/Home.aspx"  
wait (7)  
Set traverse=Browser("Jet Airways: Airlines").Page("Jet Airways: Airlines")  

traverse.WebEdit("placeholder:=From").Click  

traverse.Link("acc_name:=      This link will open Popup window for airport     selection.  ").WebElement("innerhtml:=All Airports","innertext:=All     Airports","outerhtml:=<strong>All Airports </strong>").Click  

traverse.WebTabStrip("html id:=ToC").Link("innerhtml:=Africa","innertext:=Africa").Click  
Set oDesc = Description.Create   
oDesc( "micclass" ).value = "Link"   
oDesc( "href" ).value = "https://www.jetairways.com/EN/IN/Home.aspx#"    
Set rc=Browser("creationtime:=0").Page("micClass:=page").ChildObjects(oDesc)  
msgbox rc.count  

UFT不是一个很难识别链接的人,比方说, Johanesber 伊丽莎白港等     这实际上是行不通的。尝试了很多方法。     有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

以下代码适用于我,我清理了一些空格(并简化了一些描述)。我不明白你要用脚本的最后几行来完成什么(计算链接)。

我认为您遇到的问题可能与以下事实有关:当您使用描述性编程(与:=内联或使用Description对象)时,这些值将用作正则表达式而不是简单的字符串。这意味着您必须escape regular expression characters(在这种情况下为()),否则这些值将无法匹配。

Set traverse=Browser("Jet Airways: Airlines").Page("Jet Airways: Airlines")  

traverse.WebEdit("placeholder:=From").Click

traverse.Link("acc_name:=This link will open Popup window for airport selection.").WebElement("html tag:=strong").Click

traverse.WebTabStrip("html id:=ToC").Link("innerhtml:=Africa","innertext:=Africa").Click 

traverse.Link("innertext:=Port Elizabeth \(PLZ\)").Click ' Note \( and \)

答案 1 :(得分:1)

尝试在两个不同的行中编写链接对象和弹出窗口对象 traverse.Link("acc_name:= This link will open Popup window for airport selection. ")

traverse.WebElement("innerhtml:=All Airports","innertext:=All Airports","outerhtml:=<strong>All Airports </strong>").Click 
如果属性值包含空格或符号,

也尝试使用Regex。