如何使用Selenium WebDriver.io在框架集内切换子框架

时间:2015-01-29 05:02:28

标签: selenium-webdriver

我切换帧'main',切换帧'midFrame'正常工作。 但是开关框架'left'不起作用。请看一下上面的脚本?
谢谢,

使用lib:http://webdriver.io/api/protocol/frame.html

<html>
<head></head>
<frameset frameborder="0" border="0" framespacing="0" rows="80,*,20">
    <frameset frameborder="0" border="0" framespacing="0" cols="390,*">...</frameset>
    <frame name='main' src="/CorpWeb/IbsJsps/orbilogin.jsp">
        <html>
            <head></head>
            <frameset rows="18,22,*" cols="*" ...>
                <frame src'...' name='newMidframe'>...</frame>
                <frame src'...' name='midFrame'>...</frame>
                <frameset rows="245,*" cols="*">
                    <frame src='...' name='left'>...</frame>
                    <frame src='...' name='mainFrame'>...</frame>
                </frameset>
            </frameset>
        </html>
    </frame>
    <frame> ... </frame>    
</frameset>
</html>

错误:

  

{[RuntimeError:RuntimeError        (NoSuchFrame:8)无法满足切换到帧的请求,因为找不到帧。        问题:没有这样的框架

 Callstack:
 -> frame("mainFrame") ]   message: 'RuntimeError\n     (NoSuchFrame:8) A request to switch to a frame could not be satisfied
     

因为无法找到框架。\ n问题:没有这样的   frame \ u001b [1; 30m \ n \ n Callstack:\ n - &gt;帧( “mainFrame中”)\ N”,
  name:'RuntimeError',hasCallStack:true} null {[RuntimeError:   RuntimeError        (NoSuchFrame:8)无法满足切换到帧的请求,因为找不到帧。        问题:没有这样的框架

 Callstack:
 -> frame("mainFrame") ]   message: 'RuntimeError\n     (NoSuchFrame:8) A request to switch to a frame could not be satisfied
     

因为无法找到框架。\ n问题:没有这样的   frame \ u001b [1; 30m \ n \ n Callstack:\ n - &gt;帧( “mainFrame中”)\ N”,
  name:'RuntimeError',hasCallStack:true}

1 个答案:

答案 0 :(得分:0)

原因是

  

<强>左/大型机     midFrame 下的不存在

要切换到它们,请切换回defaultContentmain帧,然后切换到left/mainFrame。您可以在html标记中看到 midFrame元素在下一个框架集开始之前结束