WebDriverJS e goniometro si sono interamente basati sul concetto di promesse:promesse rifiutate a goniometro/WebDriverJS
WebDriverJS (e quindi, goniometro) API sono del tutto asincrono. Tutte le funzioni restituiscono promesse. WebDriverJS mantiene una coda di promesse in sospeso, chiamata flusso di controllo , per mantenere organizzata l'esecuzione.
E, secondo la definition:
Una promessa è un oggetto che rappresenta un valore o l'eventuale calcolo di un valore. Ogni promessa inizia in uno stato in sospeso e può essere risolto correttamente con un valore o può essere rifiutato per designare un errore.
L'ultima parte circa il rigetto promessa è qualcosa che non capisco del tutto e non hanno affrontato in goniometro. Un modello comune che abbiamo visto e scritto è utilizzando then()
e fornendo una funzione per una promessa risolto con successo:
element(by.css("#myid")).getAttribute("value").then(function (value) {
// do smth with the value
});
la domanda:
E 'possibile che una promessa restituito da una delle goniometro/Le funzioni di WebDriverJS non verranno risolte correttamente e verrebbero rifiutate? Dovremmo davvero preoccuparci di ciò e gestirlo?
Vedere anche [Perché le eccezioni sono utilizzate per rifiutare le promesse in JS?] (Http://stackoverflow.com/a/21617531/1048572) e [Qual è la terminologia corretta per le promesse di javascript] (http: // StackOverflow. com/a/29269515/1048572) (non specifico per Goniometro) – Bergi
@Bergi grandi risposte, grazie per i collegamenti! – alecxe