使用getText()的量角器断言错误

时间:2018-08-28 12:26:12

标签: javascript angularjs protractor chai cucumberjs

我正在尝试使用BDD和量角器检查三个下拉框的值。

与此相关的代码是:

checkDropdown: function (value, dropdown) {
    let name = element(by.id(dropdown));
    console.log(name.getText());
    expect(name.getText()).to.equal(value);
},

输出为:

       AssertionError: expected { Object (browser_, then, ...) } to equal 'Apparent Energy'

如何使它起作用?我认为getText应该检索字符串而不是对象。

谢谢。

2 个答案:

答案 0 :(得分:0)

expect(name.getText()).to.eventually.equal(value);

请参阅此处: Getting "is not a thenable" message while using "eventually" in protractor chai

答案 1 :(得分:0)

因为您要声明一个承诺,所以只需更改以下代码即可等待该承诺,

checkDropdown: function (value, dropdown) {
   element(by.id(dropdown)).then(function(elem){
     elem.getText().then(function(text) {
        expect(text).to.equal(value);
     })
   });   
}