QTP:我们如何捕获在radiobutton上进行鼠标悬停时显示的工具提示文本?

时间:2011-11-16 15:36:25

标签: qtp

我正在尝试使用GetROProperty在描述性编程的单选按钮上捕获鼠标悬停时显示的文本。如果我监视显示的工具提示文本,则会将其识别为WebElement。我尝试执行以下代码

setToolTip=Browser(strBrowser).Page(strPage).WebElement(strwebElement).GetROProperty("innertext")
MsgBox ToolTip

但是我收到以下错误消息

“无法识别对象”[WebElement](类WebElement.Verify,此对象的属性与当前显示在应用程序中的对象相匹配“。

如果我通过将对象添加到对象存储库来运行相同的代码,我可以使用GetROProperty

捕获工具提示文本

GetROProperty之外是否还有其他属性,以便我可以捕获显示的工具提示文本或有其他方式吗?

请建议。

我的完整代码如下所示。我也按照建议尝试了“object.tile”但仍然是相同的问题。

Browser(strBrowser).Page(strPage).WebRadioGroup(strLogicalName).Select "true"
Browser(strBrowser).Page(strPage).WebRadioGroup(strLogicalName).FireEvent "onmouseover"
set ToolTip=Browser(strBrowser).Page(strPage).WebElement("strWebElement").Object.title

MsgBox ToolTip

请建议

感谢。

1 个答案:

答案 0 :(得分:2)

原生工具提示实际上是HTML元素的title属性,因此为了获得元素的标题,您可以Browser("a").Page("b").WebElement("c").Object.title

然而,根据您所描述的,听起来您的问题在于对象识别而不是获取属性,可能是您正在测试的Web应用程序具有特殊的javascript,它创建了一个显示文本的浮动HTML元素。如果是这样,可能是在特定事件发生之前不会创建此元素(可能是mouseover)。这可能是QTP无法识别对象的原因,它尚不存在。如果这确实发生了什么,你应首先在基本HTML元素上触发相关事件(使用QTP的FireEvent方法),然后尝试使用工具提示元素。