Selenium webdriver 无法在web驱动程序中的帧之间切换

Selenium webdriver 无法在web驱动程序中的帧之间切换,selenium-webdriver,Selenium Webdriver,我在使用webdriver自动化应用程序时切换iFrame时遇到问题。有三个文本编辑器。当我检查元素时,在相同的iframe id上,id会改变。因此,我无法在帧之间切换 我编写了以下代码:- <iframe id="vacancy_department_requirements_ifr" frameborder="0" src="javascript:""" allowtransparency="true" title="Rich Text Area. Press ALT-F9 for

我在使用webdriver自动化应用程序时切换iFrame时遇到问题。有三个文本编辑器。当我检查元素时,在相同的iframe id上,id会改变。因此,我无法在帧之间切换

我编写了以下代码:-

<iframe id="vacancy_department_requirements_ifr" frameborder="0" src="javascript:""" allowtransparency="true" title="Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help" style="width: 100%; height: 100px; display: block;">
<!DOCTYPE html>
<html>
但是上面的代码给了我以下错误: 等待帧可用120秒后超时:空缺\u工作\u描述\u ifr'


请建议。

您可以通过其索引切换帧,即driver.switchTo.frame。找到帧数并通过提供其索引值切换到帧


请参阅链接

使用driver.switchTo.framedriver.findElementBy.idp\u department\u requirements\u ifr

我是webdriver的新手。你能告诉我如何找到索引值吗?也不能和索引切换。这和这个问题类似,请仔细检查一下。[在此处输入链接说明][1][1]:
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("vacancy_job_requirements_ifr"));


WebElement element2 = driver.findElement(By.cssSelector("body"));
JavascriptExecutor executor3 = (JavascriptExecutor)driver;
executor3.executeScript("arguments[0].innerHTML = '<h1>Set text using innerHTML2</h1>'", element2);
        */
        /*wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("vacancy_job_description_ifr"));

WebElement element3 = driver.findElement(By.cssSelector("body"));
JavascriptExecutor executor4 = (JavascriptExecutor)driver;
executor4.executeScript("arguments[0].innerHTML = '<h1>Set text using innerHTML2 gf</h1>'", element3);


        wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("vacancy_department_requirements_ifr"));
 WebElement element4 = driver.findElement(By.cssSelector("body"));
JavascriptExecutor executor5 = (JavascriptExecutor)driver;
executor5.executeScript("arguments[0].innerHTML = '<h1>Set text using innerHTML3 gf</h1>'", element4);*/