java selenium 处理Iframe 中的元素
有时候我们定位元素的时候,发现怎么都定位不了。 这时候你需要查一查你要定位的元素是否在iframe里面
阅读目录
什么是iframe
iframe 就是HTML 中,用于网页嵌套网页的。 一个网页可以嵌套到另一个网页中,可以嵌套很多层。
selenium 中提供了进入iframe 的方法
// 进入 id 叫frameA 的 iframe dr.switchTo().frame("frameA"); // 回到主窗口 dr.switchTo().defaultContent();
main.html
<html> <head> <title>FrameTest</title> </head> <body> <div id="id1">this is main page's div!</div> <input type="text" id="maininput" /> <br/> <iframe id="frameA" frameborder="0" scrolling="no" style="left:0;position:absolute;" src="frame.html"></iframe> </body> </html>
frame.html
<html> <head> <title>this is a frame!</title> </head> <body> <div id="div1">this is iframes div,</div> <input id="iframeinput"></input> </body> </html>
selenium 代码
public static void testIframe(WebDriver driver) { driver.get("E:\\StashFolder\\huoli_28@hotmail.com\\Stash\\Tank-MoneyProject\\浦东软件园培训中心\\我的教材\\Selenium Webdriver\\frame\\main.html"); // 在 主窗口的时候 driver.findElement(By.id("maininput")).sendKeys("main input"); // 此时 没有进入到iframe, 以下语句会报错 //driver.findElement(By.id("iframeinput")).sendKeys("iframe input"); driver.switchTo().frame("frameA"); driver.findElement(By.id("iframeinput")).sendKeys("iframe input"); // 此时没有在主窗口,下面语句会报错 //driver.findElement(By.id("maininput")).sendKeys("main input"); // 回到主窗口 driver.switchTo().defaultContent(); driver.findElement(By.id("maininput")).sendKeys("main input"); }
以上就是java selenium处理Iframe中的元素的示例,后续继续整理相关资料,谢谢大家对本站的支持!
问题内容: 您如何从内获得一个? 问题答案: var iframe = document.getElementById(‘iframeId’); var innerDoc = (iframe.contentDocument) ? iframe.contentDocument : iframe.contentWindow.document; 您可以更简单地写: 并将返回第一个有效的内部文档。 一旦获
我试图使用python selenium实现一些自动化功能,但遇到了一些奇怪的行为。 html的总体布局: 现在,每个iframe实际上都有相同的内部html,网站上的代码似乎是随机选择哪个iframe得到了显示="块"。然而,我找不到任何iframe。 我尝试了一种标准方法:
问题内容: 我有一个网页,其中iframe内有一个文本区域。我需要使用JavaScript从其子页面读取此textarea的值。 目前,通过在JavaScript中使用,我能够在iframe中获取父页面中除textarea之外的所有控件的值。 任何人都可以给我任何指示以解决此问题吗? 问题答案: 如果您的iframe与父页面位于同一域中,则可以使用collection 访问元素。 如果您的ifra
问题内容: 在我们的应用程序中,我们解析一个网页并将其加载到iFrame中的另一个页面中。该加载页面中的所有元素都有其令牌标识。我需要通过那些tokenid -s选择元素。意思是-我单击主页上的元素,然后在iFrame中选择页面中的相应元素。在jQuery的帮助下,我通过以下方式进行操作: 但是,通过此功能,我只能选择当前页面中的元素,而不能选择iFrame中的元素。谁能告诉我如何在加载的iFra
我正在编写一个jQuery插件,它需要能够在iframe中针对DOM元素运行。我现在只是在本地测试这个(即url是file://.../example.html),在Chrome中,我一直按“安全错误:未能从”htmliframeElement“中读取”内容文档“属性:阻止一个来源为”null“的框架访问跨来源的框架。”在Safari中,我只得到一个空文档。 如果父文件和iframe文件都从我的本
我正在学习使用Java和Eclipse IDE的Selenium测试自动化。我正在尝试开发自己的XPAHT,但我在浏览器上安装了Chropath来帮助解决我自己无法解决的问题。在尝试与play按钮交互时,我遇到了以下问题几次。测试的目标是导航到网站的播客页面,选择一个播客,点击播放按钮。我尝试开发自己的xpath,但没有找到任何工作的xpath。我检查了Chropath插件,得到了这样的消息: 它