Selenium在访问框架内的元素时出现问题
我在验证由框架集和框架组成的页面中的元素时遇到问题 我正在使用代码:Selenium在访问框架内的元素时出现问题,selenium,Selenium,我在验证由框架集和框架组成的页面中的元素时遇到问题 我正在使用代码: selenium.selectFrame("relative=up"); selenium.selectFrame("topFrame"); 但它失败了,错误为“Element topFrame not found”。在尝试导航到任何帧时,我都会遇到类似的错误 我也尝试过指定DOM路径和使用索引,但似乎没有任何效果 HTML如下所示: <frameset framespacing="0" border=
selenium.selectFrame("relative=up");
selenium.selectFrame("topFrame");
但它失败了,错误为“Element topFrame not found”。在尝试导航到任何帧时,我都会遇到类似的错误
我也尝试过指定DOM路径和使用索引,但似乎没有任何效果
HTML如下所示:
<frameset framespacing="0" border="0" frameborder="NO" rows="80,*">
<frame scrolling="NO" frameborder="NO" src="header.html" noresize="" name="topFrame">
<frameset framespacing="0" border="0" frameborder="NO" cols="210,*">
<frame scrolling="NO" frameborder="NO" src="menu.html" name="leftFrame">
<frame scrolling="YES" bordercolor="#78B0D5" frameborder="YES" src="content.html" name="mainFrame">
</frame>
</frameset>
</frameset>
有什么建议吗?当使用相对帧导航时,它显然完全取决于您从何处开始。为了确保这一点,我们总是从
selenium.selectFrame(“relative=top”)开始框架导航代码>,将您定位在外部
级别,其中selenium。选择Frame(“topFrame”)代码>是有意义的。根据我的经验,硒元素在设置帧上下文时是“喜怒无常”的。我发现定义显式的帧标识符比仅仅依赖上下文更有用。因此,在您的情况下,我将使用:
selenium.selectFrame("relative=top");
selenium.selectFrame("css=frame[class=...]");
在上述命令中,尝试使用id=“topFrame”,而不是写入name=“topFrame”。
selenium使用id标识对象