量角器 - 测试 Oauth2 时切换到 facebook 登录屏幕
protractor - switch to facebook login screen when testing Oauth2
我正在尝试为我使用 oauth2 的应用程序编写端到端登录测试。
单击 facbook 登录时 - 另一个 window 打开(facebook 登录)。我正在尝试在那里输入凭据。
我目前正在使用
browser.driver.switchTo().window();
因为是新的window。
我读到可以通过在控制台中输入 'window.name' 来获取 window 的名称。
这样做的时候我得到了'_e_02MT'
我也试过 'window.document.title' 并得到了 'Facebook'
我尝试了
的不同组合
browser.driver.switchTo().window('_e_02MT');
browser.switchTo().window('Facebook');
browser.driver.switchTo().window('Facebook');
等等
仍然无法做到 window。我收到错误:
NoSuchWindowError: no such window
有什么想法吗?
谢谢。
您需要提供 句柄:
,而不是 window 的名称
browser.getAllWindowHandles().then(function (handles) {
// switch to the popup
browser.switchTo().window(handles[1]);
// do stuff with the popup
// ...
// go back to the main window
browser.switchTo().window(handles[0]);
});
我正在尝试为我使用 oauth2 的应用程序编写端到端登录测试。 单击 facbook 登录时 - 另一个 window 打开(facebook 登录)。我正在尝试在那里输入凭据。 我目前正在使用
browser.driver.switchTo().window();
因为是新的window。 我读到可以通过在控制台中输入 'window.name' 来获取 window 的名称。 这样做的时候我得到了'_e_02MT' 我也试过 'window.document.title' 并得到了 'Facebook' 我尝试了
的不同组合browser.driver.switchTo().window('_e_02MT');
browser.switchTo().window('Facebook');
browser.driver.switchTo().window('Facebook');
等等 仍然无法做到 window。我收到错误:
NoSuchWindowError: no such window
有什么想法吗?
谢谢。
您需要提供 句柄:
,而不是 window 的名称browser.getAllWindowHandles().then(function (handles) {
// switch to the popup
browser.switchTo().window(handles[1]);
// do stuff with the popup
// ...
// go back to the main window
browser.switchTo().window(handles[0]);
});