嗨,我想通过Selenium Webdriver代码(Java)为我的项目找到CK编辑器。但是,每当我尝试使用SendKeys()方法时,它都无法为我工作。
下面是CK编辑器和HTML代码的屏幕截图。

java - 在Selenium Webdriver中找到CK编辑器并向其发送文本-LMLPHP

下面是代码,

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章中,我们提供了与编辑人员合作的技术。

10-07 19:26
查看更多