无法获取通过单击按钮打开的新窗口页面的url。
it('Start test', () => {
element.all(by.buttonText('Launch Test')).click().then ( function() {
browser.sleep(2000);
browser.switchTo().window('Test');
console.log('url ' + browser.getCurrentUrl());
expect(browser.getCurrentUrl()).
toBe('https://localhost:44323/#/test/run/test_id');
});
});
这段代码总是返回当前页面的url,而不是新窗口页面的url。
Failed: no such window
(Session info: chrome=67.0.3396.99)
(Driver info: chromedriver=2.40.565498 (ea082db3280dd6843ebfb08a625e3eb905c4f5ab),platform=Windows NT 10.0.17134 x86_64)
有什么建议?
发布于 2018-07-08 04:23:40
你对问题的根源有一个错误的建议。错误出现在系统甚至可以接受url之前。系统无法切换到“测试”窗口。您是否可以尝试以更常见的方式实现交换:
browser.getAllWindowHandles().then(function(handles){
browser.switchTo().window(handles[1]).then(function(){
//do your stuff on the pop up window
});
});
https://stackoverflow.com/questions/51212072
复制相似问题