Как мне установить значение поля ввода с помощью chai / chai-smoothie? - PullRequest
0 голосов
/ 08 ноября 2018

Спасибо за чай-смузи!

Как мне установить значение поля ввода с помощью chai / chai-smoothie?

Учитывая, что getText () всегда пуст, и мы должны использовать element.getAttribute ('value') (см .: Как получить getText для входа в транспортир )

Я бы хотел иметь возможность сделать что-то вроде:

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'

1 Ответ

0 голосов
/ 08 ноября 2018

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');
...