Селен и ckEditor

Кто-нибудь знает Как я могу заставить ckEdtior работать с Selenium. Я не могу сосредоточиться на поле "html edit" или изменить значение поля html.

Есть ли у кого-нибудь опыт?

Ответы

Ответ 1

Только для завершения андерсера: Я получил его для работы с: runScript("CKEDITOR.instances['InstanceName'].setData('<p>testContent</p>');") Он не работал с командой getEval.

Ответ 2

Когда мне приходилось тестировать редакторов WYSIWYG, мне пришлось создать собственный механизм для работы в области содержимого. Обычно это связано с необходимостью установки внутреннего HTML-объекта, а затем начать использовать манипуляторы страниц в панелях инструментов.

С Selenium 2 вы сможете отправлять нажатия клавиш, чтобы они работали лучше и намного проще.

Ответ 3

Работа в селене:

selenium.runScript("for(var i in CKEDITOR.instances) { var x = CKEDITOR.instances[i]; " + " x.setData('" + texto + "'); }");

Ответ 4

Я нашел решение, которое сработало для меня. Вы можете вставить user-extension.js(Опции > Параметры > Selenium Core Extension > Browse), введя следующее:

 Selenium.prototype.doInsertCKEditor = function(locator,word) 
{ 
    this.doWaitForCondition("var x = Selenium.browserbot.findElementOrNull('//td[@id=\"cke_contents_form \"]');x != null;", "50000"); 
    this.doRunScript("CKEDITOR.instances['"+locator+"'].setData('"+word 
+"');"); 
} 

Это добавит параметр insertCKEditor в опции Command для Selenium IDE.