2012-09-10 35 views
3

我想知道如果有人能指出我到底在做什么错误。我正在尝试使用Android WebDriver访问iframe。当我点击主页上的登录链接时,iframe会打开。下面是我试图访问 -无法使用Android WebDriver切换到IFrame

<div class="dialog" style="background-color: rgb(232, 235, 238); color: rgb(51, 51, 51);"> 
    <iframe id="registration-dialog-frame" scrolling="no" frameborder="0" src="http://test.com" border="0" allowtransparency="true" style="width: 235px;"> 
    <html> 
    </iframe> 
<span id="signin-cancel" class="cancelButton">Cancel</span> 

我等到了iframe打开时,检查帧ID存在,然后使用SWITCHTO具有IFRAME ID在src代码片段()切换到该iframe这样

driver.switchTo().frame("registration-dialog-frame"); 

我得到一个

org.openqa.selenium.WebDriverException: Error: {"message":"Cannot read property 'document' of undefined"} 

当我尝试这

driver.switchTo().frame(driver.findElement(By.id("registration-dialog-frame"))); 

我得到一个

org.openqa.selenium.WebDriverException: java.util.ArrayList cannot be cast to org.openqa.selenium.android.library.DomWindow 

这是一款Android webdriver的事情吗?有没有人切换到iframe时会遇到类似的错误?有谁知道我该怎么做?

回答

0

通过查看代码并使用索引切换到特定帧,检查该页面中存在的帧数,如下所示。

driver.switchTo().frame(frameindex); 

例如:要切换到第一帧,请使用下面的行。

driver.switchTo().frame(0); 
相关问题