我无法在另一帧中的框架的文本框中输入文本。 这是我的环境:IE 10,最新的Selenium驱动程序2.40.0,测试是用Java开发的,我使用的文件属性包含我元素的所有Xpath。 这是我的代码,我尝试了两种不同的方式来编辑我的文本框,但两者都没有用。
WebElement firstFrame = getDriverProvider().get().findElement(getLocator(frame));
String firstFrameLink = firstFrame.getAttribute("src");
getDriverProvider().get().switchTo().frame(firstFrame);
//getDriverProvider().get().switchTo().activeElement();
WebElement secondFrame = getDriverProvider().get().findElement(getLocator(field));
String secondFrameLink = secondFrame.getAttribute("src");
getDriverProvider().get().switchTo().frame(secondFrame);
WebElement element = getDriverProvider().get().findElement(getLocator("Input.field"));
//getDriverProvider().get().switchTo().activeElement();
JavascriptExecutor jsx = (JavascriptExecutor)getDriverProvider().get();
jsx.executeScript("arguments[0].click();", element);
jsx.executeScript("arguments[0].value='testdata';", element);
String s = (String) jsx.executeScript("return arguments[0].getAttribute('name')", element);
//System.out.println(s);
element.click();
element.sendKeys("toto");
我确信我的框架切换工作正常,因为我设法得到第二帧元素的属性(我的代码中的字符串)我已经尝试了我在互联网上找到的所有内容
1. switchTo().activeElement()
=>不解决我的问题
2. Use javascript to enter text jsx.executeScript("arguments[0].value='testdata';", element)
=>即使我没有错误也不起作用,文本没有写在文本框中
3. Selenium method element.click()
=>不起作用给了我org.openqa.selenium.ElementNotVisibleException:无法点击元素
4. Selenium method element.sendKeys("toto")
=>不起作用给了我org.openqa.selenium.ElementNotVisibleException:元素没有显示