单击后打开新页面的URL

时间:2015-10-09 15:25:13

标签: javascript angularjs selenium-webdriver protractor webpage

我正在编写一个测试,点击按钮并打开一个新标签并引导您进入新网站。我想调用该网站的值,以便我可以在网页名称中的rfp代码后解析它。然后我打开一个解码器站点并用它来解码,并确保解码的网页名称正常工作。

我使用的代码:



this.switchesToGetQuotePage = function() {
  browser.getAllWindowHandles().then(function(handles) {
    newWindowHandle = handles[1]; // this is your new window
    browser.switchTo().window(newWindowHandle).then(function() {
      getCurrentUrl.then(function(text) {
        console.log(text);
      });
    });
  });
};




当我调用getCurrentUrl函数时,它返回以下值:



data: ,




1 个答案:

答案 0 :(得分:1)

使用getLocationAbsUrl()内置的量角器获取当前页面的网址(如果基于角度)。这是如何 -

browser.getLocationAbsUrl().then(function(url){
    console.log(url);
});

但是,如果您正在处理非角度页面,那么请等到页面加载为网址更改(通过重定向),直到最终页面传递到客户端,然后在页面上使用getCurrentUrl()。这是如何 -

   var ele = $("ELEMENT_ON_NEW_PAGE"); //replace it with your element on the page
   browser.switchTo().window(newWindowHandle).then(function() {
      browser.wait(protractor.ExpectedConditions.visibilityOf(ele), 10000).then(function(){
        getCurrentUrl.then(function(text) {
          console.log(text);
        });
      });
    });

希望它有所帮助。