谢谢蔡司!
如何使用chai / chai-smoothie断言输入字段的值?
鉴于getText()始终为空,我们应该使用element.getAttribute('value')(请参阅:How to getText on an input in protractor)
我希望能够做类似的事情:
expect(this.nameTextbox).to.eventually.have.value('name');
这似乎不起作用:
expect(this.nameTextbox.getAttribute('value')).to.eventually.equal('name');
AssertionError: expected { Object (browser_, then, ...) } to equal 'name'
答案 0 :(得分:1)
chai-smoothie
使断言失败时的错误消息更易读。但是它不能处理承诺:this.nameTextbox.getAttribute('value')
返回承诺。
注意:所有Protractor API的返回承诺。
您需要将chai-as-promised
与chai
一起使用来处理承诺。
var chai = require('chai'),
chai.use(require('chai-as-promised'));
chai.use(require('chai-smoothie'));
global.expect = chai.expect;
// then can do assertion as following:
expect(this.nameTextbox.getAttribute('value')).to.eventually.equal('name');