我正在使用CKEditor,我想做一些功能测试。问题是CKEditor以某种方式将自己附加到TEXTAREA标记,并通过javascript向DOM添加元素,我可以看到,即在Mozilla的“View Generated Source”菜单中。
然而,使用Zombie进行测试,无论我等到页面加载多长时间,我都看不到生成的代码(我只在CKEditor添加的DOM元素中有标签)
browser.wait(function(arg){
return arg.document.querySelector('a');
}(browser),
function(arg){
console.log(arg.document.innerHTML);
}(browser));
其中browser = new Zombie({debug: true, runScripts: true});
虽然页面已加载,但它似乎只包含“硬编码”的静态代码,但没有通过CKEditor通过javascript添加的代码。
所以,问题是:是否可以以Zombie看到动态加载的元素的方式加载文档?
答案 0 :(得分:0)
试试browser.html()
。请参阅Hunting
console.log(browser.html());
答案 1 :(得分:0)
我遇到了同样的问题并找到了解决办法......如果有人在此停留:)
确实,browser.html()
不刷新html。
您必须使用xpath并获取outerHTML。尝试使用xpath获取节点,如browser.xpath('/html')
。然后你可以得到它的outerHTML
。
我使用Mink(PHP),所以我没有确切的javascript代码,但我给你的想法......