ich den folgenden Code haben, die Elemente, die Text-Filter:Winkelmesser count() Erwartung nicht unerwartet
var myspan = searchChoices.filter(function(elem, index) {
return elem.getText().then(function(text) {
//console.log('index text:' +text);
return text === 'Consultant 110';
});
});
expect(myspan).not.toBe(null);
myspan.count().then(function (x) {
console.log('count:'+x);
});
expect(myspan.count()).toBe(1); // this succeeds
expect(myspan.count()===1).toBe(true); // <---This fails
Das Merkwürdige ist, dass die Erwartung in Zeile vor der letzten Zeile gelingt, aber die letzte ausfällt. Was ist der Grund ?
[ 'count()'] (https://angular.github.io/protractor/#/ api? view = ElementArrayFinder.prototype.count) gibt eine Verheißung und keine ganze Zahl zurück. 'expect()' weiß, wie man mit dem Versprechen umgeht, aber 'count() === 1 'wird immer fehlschlagen – Phil
Ja, aber ist nicht erwartet, dass alle Versprechungen vor der Auswertung gelöst werden sollen? – chrisl08
Ja, aber das ist ein Boolescher Wert, an den du gehst, kein Versprechen – Phil