如何让 Protractor 在不重新加载浏览器的情况下重新加载 DOM?
我有一个 Web 应用程序,它完全加载,然后在 5 秒后动态地向页面添加调查并且 DOM 发生变化。我的量角器测试无法在调查弹出窗口(Angular 应用上的 Qualtrics 调查)中找到任何元素,包括关闭按钮。
那么,我怎样才能让 Protractor 重新读取 DOM 以便它知道调查弹出窗口?
重新加载页面或重新导航到相同的 URI 不是一种选择,因为它会重置应用程序并且页面状态丢失并且调查将消失。
使用 waitForAngularEnabled 将不起作用,因为 DOM 在 5 秒计时器后再次更改。
例如,这些都不起作用:
isSurveyDialog() {
return element(by.css('div.QSIPopOver')).isPresent() as Promise<boolean>;
}
isSurveyDialog() {
const EC = protractor.ExpectedConditions;
return browser.wait(EC.presenceOf($('.QSIPopOver')), 10000) as Promise<boolean>;
}
是否有较低级别的“webdriver js”方法来执行此操作?