如何处理带有动态ID的iframe和包含多个iframe的单个页面,其中id以使用Selenium的公共字符串开头

时间:2015-12-08 19:10:37

标签: java selenium iframe dynamic selenium-webdriver

一个页面包含多个带动态ID的iframe。

ids看起来像这样

EXT-COMP-1005, EXT-COMP-1031-.X边界面板

如何处理其中一个iframe中存在的元素? 我有个建议使用这样的东西 driver.findElement(By.css( “IFRAME:第一的型”));

这不是完整/正常的代码。 任何1可以解释该陈述的含义或您如何处理这种情况?

我可以访问页面上的每个框架&搜索WebElement,但是有最佳方式吗?

当前代码:

mv /VOLUMES/USB1/*.dat /VOLUMES/USB1/specificFolder

1 个答案:

答案 0 :(得分:0)

您可以愉快地切换到所需的框架,任何定位器都可能是xpath。

driver.switchTo().frame(driver.findElement(By.xpath("//your iframe xpath here")));

如果你的框架在任何其他框架内,这意味着如果你所需的元素在内框架内,那么首先切换到外框架,然后再次切换到内框架。

如你所知,以下命令用于关闭所有帧..

  driver.switchTo().defaultContent();

我希望你能弄清楚xpath甚至id是动态变化的。如果您在查找框架的xpath时遇到任何困难,请发布HTML代码。当然,如果存在,您可以直接使用ClassName和Name而不是xpath。

由于