嗨,我想通过Selenium Webdriver代码(Java)为我的项目找到CK编辑器。但是,每当我尝试使用SendKeys()方法时,它都无法为我工作。
下面是CK编辑器和HTML代码的屏幕截图。
下面是代码,
if(driver.findElement(By.cssSelector("iframe#scayt_8")).isEnabled())
{
WebElement iframe = driver.findElement(By.cssSelector("iframe#scayt_8"));
System.out.println("Frame Enabled");
if(driver.findElement(By.xpath("//iframe[@id = 'scayt_8']")).isDisplayed())
{
System.out.println("Frame Displayed");
driver.switchTo().frame(iframe);
iframe.clear();
System.out.println("Clicking frame");
iframe.click();
iframe.sendKeys("Hello!!");
}
}
请帮助我找到CK编辑器并向其发送文本。
最佳答案
您可能需要切换到嵌入式框架才能找到它。
WebElement editorFrame = driver.findElement(By.id("scayt_8"));
driver.switchTo().frame(editorFrame);
WebElement body = driver.findElement(By.tagName("body"));
body.clear();
body.sendKeys("some text");
在本书Selenium WebDriver In Practice中的第3章中,我们提供了与编辑人员合作的技术。