使用Protractor for Angular,需要更新DIV的内部HTML。
以下内容并未反映出这一变化:
element(by.className("ql-editor")).sendKeys("new content");
这样做的原因是测试包含HTML编辑器(Quill)的Angular页面。编辑器的值在浏览器中显示为带有类ql-editor的DIV的内部HTML。
实现这一目标的最佳方法是什么? (找不到任何更新sendKeys之外的值的函数)
是否可以在Protractor中使用本机DOM对象或将ElementFinder对象转换为javascript DOM对象?
答案 0 :(得分:0)
此typescript函数更新位于Protactor的元素的innerHTML属性:
setHTMLValue(element: ElementFinder, value: string) {
function setInnerHTML (div, content) {
div.innerHTML = content;
}
browser.executeScript(setInnerHTML, element, value);
}
使用示例:
let element = element(by.id("d0"));
setHTMLValue(element, "test");