对于使用 target='_blank_' 编写的重定向 URL,Protractor 测试失败

Protractor test fails for redirected urls that are written with target='_blank_'

fit('try google',async ()=>{    
        let logo = $('.logo')
        await logo.click();
        expect(await browser.driver.getCurrentUrl()).toMatch('https://www.google.com/');

    });

<div class="logo">
            <a href="https://www.google.com/" target="_blank">google</a>
        </div>

错误

应为“http://localhost/thunfisch/home.aspx' to match 'https://www.google.com/”。

目标不为_blank时有效。它看起来很简单,但我无法让它工作。谢谢

target="_blank" 在新标签页中打开 link。

您可能仍在第一个选项卡上,但测试会查找 google.com。

您应该在断言之前切换到最后一个选项卡。请参阅文档: http://www.protractortest.org/#/api?view=webdriver.WebDriver.prototype.switchTo

您还可以在此处查看示例用法:

编辑: 以非异步方式,它看起来像:

return.browser.getAllWindowHandles().then((availableTabs) => {
    return browser.switchTo().window(availableTabs[availableTabs.length - 1]);
});

瞧!