我正在使用QTP 9.5。它无法识别帧对象。我使用了对象间谍,当手进入帧时它识别为Windows资源管理器,而不是帧。 请为此建议解决方案。
答案 0 :(得分:2)
QTP9.5和10.0中存在一个已知问题,当导航到JavaScript网址时(例如,href="javascript:..."
的链接),所有网络支持都会丢失。
修补程序QTPWEB_00029解决了此问题(对于QTP9.5),您可以通过与HP支持部门联系来获取此修补程序。
可能工作的另一件事是运行未记录的方法Browser("...").RefreshWebSupport
答案 1 :(得分:0)
我的经验告诉我,QTP 9.5不稳定并且有很多未解决的问题。如果这恰好是一种随意的行为,我不会感到惊讶。
在页面对象上调用childobjects()并检查所需的帧是否是返回集合的一部分。如果没有,您还可以尝试使用DOM访问框架的属性。
答案 2 :(得分:0)
试试这个
'get the html DOM obj from the page
Set pageObj = Browser("eNSQ Window Objects").Page("Additional Information - Type DP - Bad Habits - eNSQ").Object
'get all frames
Set frames = pageObj.getElementsByTagName("frame")
'loop through all frames and msgbox the title
for each thisFrame in frames
MsgBox thisFrame.title
next
答案 3 :(得分:0)
打开QTP后打开窗口/浏览器?
如果这不起作用,请尝试重新注册QTP dll 开始菜单 - >程序 - > Quicktest Professional - >工具 - >其他安装要求 运行该utillity来修复dll。
祝你好运