У меня есть обработка async WebDriverJS, которая пропускается, потому что тест завершается до того, как они будут разрешены. Как заставить транспортир ждать?
Например: (оба этих теста должны потерпеть неудачу (предоставленный потенциальный билет)
it('test promise ', function (done) {
var d = protractor.promise.defer();
d.fulfill(true)
d.promise.then(function (item) {
console.log("fulfill", item);
});
expect(d.promise)
.toBe(false);
console.log("test done");
});
it('test promise with timeout ', function (done) {
var d = protractor.promise.defer();
setTimeout(function () {
console.log("fulfill");
d.fulfill(true)
}, 3000);
d.promise.then(function (item) {
console.log("fulfill", item);
});
expect(d.promise)
.toBe(false);
console.log("test done");
});
Сообщите мне, если вам нужна дополнительная информация...?
Это вернет true.. если вы удалите тайм-аут и просто установите выполнение, он будет работать...