Java 是否有可能刷新Selenium中的某个帧

Java 是否有可能刷新Selenium中的某个帧,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我想使用Selenium刷新某个IFrame。 我想到的唯一方法是在某些Web元素上使用f5键 driver.switchTo().parentFrame(); driver.findElement(By.id(“main”)).sendKeys(\\uE035”); 但它确实会重新加载整个页面,这不是我需要的。 在选定的框架上有一个选项,可以使用鼠标右键重新加载它,然后您可以选择“重新加载框架”选项,但chrome没有为此选项提供快捷方式,这使得无法在某个WebElement上使用SendK

我想使用Selenium刷新某个IFrame。 我想到的唯一方法是在某些Web元素上使用f5键

driver.switchTo().parentFrame();
driver.findElement(By.id(“main”)).sendKeys(\\uE035”);
但它确实会重新加载整个页面,这不是我需要的。
在选定的框架上有一个选项,可以使用鼠标右键重新加载它,然后您可以选择“重新加载框架”选项,但chrome没有为此选项提供快捷方式,这使得无法在某个WebElement上使用SendKeys()。

看起来您是在父元素而不是实际的iFrame元素上刷新

试试下面的方法。如果有多个iframe元素,则需要使用不同的选择器

        JavascriptExecutor js = (JavascriptExecutor) driver;
        js.executeScript("document.getElementsByTagName('iframe')[0].contentWindow.location.reload();");

看起来您正在对parentElement而不是实际的iFrame元素进行刷新

试试下面的方法。如果有多个iframe元素,则需要使用不同的选择器

        JavascriptExecutor js = (JavascriptExecutor) driver;
        js.executeScript("document.getElementsByTagName('iframe')[0].contentWindow.location.reload();");