Chcę użyć funkcji browser.wait, aby wielokrotnie sprawdzać, czy element przycisku jest obecny przez określony czas, a następnie użyć odpowiedniego wywołania zwrotnego. Poniżej mam kod, który nie używa czekania.Co Protractor browser.wait zwraca, jeśli warunek nigdy nie staje się prawdziwy?
detailsButton.isPresent()
.then(function(present){
if(!present) {
callback();
} else {
callback(new Error('The details button was not present.'));
}
});
Chciałbym pomóc w naprawie tego kodu, ponieważ nie jestem pewien, jak funkcja wait radzi sobie z falure/timeout. Zasadniczo pytam, co powinno być w ". Then" części poniższego kodu, który jest mniej przylegający do tego, co mam obecnie.
browser.driver.wait(function(){
return pgTransactionHistory.transactionHistoryDetails.isPresent();
}, 60000).then(function(){
pgTransactionHistory.transactionHistoryDetails.isPresent()
.then(function(present){
if(!present) {
callback();
} else {
callback(new Error('The details button was not present.'));
}
});
});
Dziękujemy!
Dlaczego kątomierz nie tylko odrzuca błąd i kończy go w procedurze obsługi .catch? – Abdel