I WebDriver in Java mit Firefox 14.mit Selen WebDriver mit CKEditor in Firefox 14
Mein Problem bin ist, dass ich nicht WebDriver zu bekommen scheinen gut mit CKEditor zu spielen. Ich habe nach Lösungen gesucht aber nicht gelungen, alle Arbeiten in entweder Firefox 13 oder 14. Diese zu erhalten, sind die Lösungen, die ich versucht habe:
Die normalen Tastaturbefehle interction
textArea.sendKeys();
oder
textArea.click(); textArea.sendKeys();
Ergebnis: Dieser Code eines beliebigen Text in dem CKEditor nicht produzieren würde
Der Code von Selenium issue 3890
d.get("http://ckeditor.com/demo"); WebElement iframe = d.findElement(By.tagName("iframe")); d.switchTo().frame(iframe); WebElement tinymce = d.findElement(By.tagName("body")); tinymce.clear(); tinymce.sendKeys("Hello, ckeditor!");
Ergebnis: Dieser Code wird auf die Website gehen und den Editor löschen, aber nicht in einem beliebigen Text in die CKEditor Instanz setzen.
AdvancedUserInteractions - z. Aktionen() in mehreren Variationen
textArea.click(); new Actions(driver).sendKeys("Hello, ckeditor!").build().perform();
und
new Actions(driver).sendKeys(textArea, "Hello, ckeditor!").build().perform();
und
new Actions(driver).click(textArea).sendKeys("Hello, ckeditor!").build().perform();
Ergebnis: Diese werden nicht produzieren einen beliebigen Text in der CKEditor
Schalt iframes (gemäß der obigen Ausgabe 3890) und mit Advan cedUserInteractions
Code ähnlich:
driver.switchTo().frame(iframe); textArea.click(); new Actions(driver).sendKeys("Hello, ckeditor!").build().perform();
Ergebnis: Wirft Fehler "c.value nicht definiert ist"
die Javascript verwenden und die CKEditor Api
JavascriptExecutor js = (JavascriptExecutor) d; System.out.println("[debug] Set Text: " + setText); js.executeScript("CKEDITOR.instances.editor1.setData('<p> "+ setText +"</p>');");
Ergebnis: Schließt das Zeichen '/' aus, wenn "org.apache.commons.lang.StringEscapeUtils.escapeHtml" nicht zum Konvertieren von "setText" in HTML-Einträge verwendet wird. Diese Lösung wirft auch einen "FEHLER: null" auf großen Zeichenfolgen.
Irgendwelche Ideen zu Dingen, die ich nicht ausprobiert habe? Korrekturen für Dinge, die ich versucht habe? Irgendwelche anderen Vorschläge?
Danke!