量角器:在变量中存储URL以解析返回“未定义”

时间:2015-05-05 23:45:50

标签: angularjs protractor angularjs-e2e e2e-testing

我一直在尝试获取当前的网址,并希望删除部分网址以用于其他方法。 我尝试了很多方法,我在网上看到的一个解决方案建议使用beforeEach()方法。我一直在尝试这个,无论如何,this.urlString总是返回undefined。

这是我目前所拥有的。我必须遗漏一些关于为什么返回未定义然而我无法弄清楚的事情。

this.urlString;

beforeEach(function () {
  mainPO.navigateHome();
  mainPO.clickCurrent();

  browser.getCurrentUrl().then(function (url) {
    return this.urlString = url;
  });
});

console.log(this.urlString)

我想要做的是将URL存储在一个字符串中,然后解析字符串以删除URL的“.com”之前的所有内容,这样我就可以获取字符串并将其插入另一个URL以便爬行到另一个链接

1 个答案:

答案 0 :(得分:2)

要将URL值作为字符串获取,您需要解析browser.getCurrentUrl()函数调用返回的承诺

beforeEach(function () {
  mainPO.navigateHome();
  mainPO.clickCurrent();

  this.urlString = browser.getCurrentUrl();
});

this.urlString.then(function (url) {
    console.log(url);
});