Javascript 使用量角器关闭窗口弹出窗口

Javascript 使用量角器关闭窗口弹出窗口,javascript,selenium-webdriver,protractor,Javascript,Selenium Webdriver,Protractor,this.switchWindowByTitle=异步函数(title){ 等待browser.getAllWindowHandles()。然后(函数(句柄){ handles.forEach(函数(handle){ console.log(handle.toString()); browser.switchTo.window(句柄); if(browser.getTitle()==标题){ 返回true; } }); })使用此方法将关闭弹出窗口 closeBrowserPopup: () =

this.switchWindowByTitle=异步函数(title){
等待browser.getAllWindowHandles()。然后(函数(句柄){
handles.forEach(函数(handle){
console.log(handle.toString());
browser.switchTo.window(句柄);
if(browser.getTitle()==标题){
返回true;
}
});

})使用此方法将关闭弹出窗口

closeBrowserPopup: () => {
  return new Promise((resolve, reject) => {
    closePopup();
    resolve("done");
  });
};

如果你说wait browser.switch to.window(handle);?这有帮助吗?我的直觉是你在切换完成之前就得到了标题。@JeremyKahan:谢谢,但切换后我得到了标题,我的问题是这段代码并没有遍历句柄中的所有项目,它只检查第一个值。是的,但“之后”可能不是你想的那样。当你做GetTitle时,switchTo可能还没有完成。另一种测试我建议的方法是执行a。然后在switchTo上,将GetTitle放入该函数中。是的,我按照你的建议尝试了,但它不起作用。是的,我也是,对不起。如果你现在取消返回,只需要记录browser.GetTitle(),你看到所有的标题还是只有一个?