量角器 - 将浏览器标题作为字符串

Emi*_*mil 3 string testing protractor

我想存储初始设备标题,可以通过浏览器中的GUI作为页面标题访问,稍后在代码中重用它.例如,如果设备名称仅设置为某个特定名称,则我想更改设备名称,并在浏览器控制台日志中存储旧设备名称.代码可能如下所示:

    var some_name = 'Some Name';
    var title = browser.getTitle();
    console.log(title);
    if (title.equals('Some Name')){
    some_name = 'Some Other Name';
    }
    setDeviceName(some_name);
Run Code Online (Sandbox Code Playgroud)

不幸的是,对于那个量角器回应

    TypeError: title.equals is not a function
Run Code Online (Sandbox Code Playgroud)

如何将浏览器标题提取为字符串?谢谢.

更新:

谢谢大家,由于igniteram1的解决方案是

    var some_name = 'Some Name';
    some_name = browser.getTitle().then(function(webpagetitle){
      if (webpagetitle === 'Some Name'){
        return 'Some Other Name';
      }else{
        return 'Some Name'
      } 
    });
    expect(some_name).toEqual('Some Other Name');
Run Code Online (Sandbox Code Playgroud)

Ram*_*ala 6

除了@Sudharshan Selvraj的答案之外,它的良好做法是使用严格的平等===代替==return价值.

var some_name = 'Some Name';
some_name = browser.getTitle().then(function(webpagetitle){
  if (webpagetitle === 'Some Name'){
    return 'Some Other Name';
  }else{
    return 'Some Name';
  }
 });
expect(some_name).toEqual('Some Other Name'); 
Run Code Online (Sandbox Code Playgroud)


Fro*_*yte 5

如果您知道新的 asyc/await,您可以使用:

expect(await browser.getTitle()).toEqual("myCustomTitle");