我正在Selenium(Node.js)之上构建一个自动化框架,该框架包含许多步骤。 每个步骤都跟在前一个步骤完成后,返回一个promise(就像Selenium的driver.click()返回的那个等)。 是否可以等待JavaScript事件在浏览器上触发?如果是这样,那么模式是什么?
答案 0 :(得分:2)
使用.executeAsyncScript
等待事件发生:
driver.executeAsyncScript(function(callback) {
window.addEventListener('message', function onmessage() {
window.removeEventListener('message', onmessage);
callback();
});
});
文档: