单击会打开一个我需要与之交互的新选项卡,但我只是保持原样 window

On click opens a new tab I need to interact with, however I just stay on the same window

我是量角器的新手,AngularJS 刚刚开始掌握它。我有一个登录页面,单击它会打开一个新的浏览器选项卡。新的浏览器选项卡是我想继续测试的地方,但是我不知道如何切换到新的浏览器选项卡。

我已经尝试了此处建议的以下代码,但它没有做任何事情,只是停留在页面上。

    element(by.css('span.icon.icon-add')).click();.then(function() {
      browser.getAllWindowHandles().then(function(handles) {
        newWindowHandle = handles[1]; // this is your new window
        browser.switchTo().window(newWindowHandle).then(function() {
        element.all(by.css("input[type$='text']")).first().clear().sendKeys('anemailaddy@newmarketinc.com');
        });
      });
    });

任何帮助都会很棒!谢谢

将代码更改为如下所示:

    this.clicksAddUser = function() {
        element(by.css('span.booking-icon.icon-gear')).click();
        element.all(by.css('li:nth-of-type(4) > a')).click().then(function() {
          browser.getAllWindowHandles().then(function(handles) {
            newWindowHandle = handles[1]; // this is your new window
            browser.switchTo().window(newWindowHandle).then(function() {
              element(by.css('span.icon.icon-add')).click()
              element.all(by.css("input[type$='text']")).first().clear().sendKeys('anemailaddy@newmarketinc.com');
            });
          });
        });

因为我在单独的此语句中单击下拉菜单,所以在有机会单击登录按钮之前,下拉菜单已关闭。合并代码解决了问题。