J'ai des scripts JS dans mes tests. Je ne comprends pas pourquoi, mais ça a cessé de fonctionner maintenant. Peut-être que cela s'est passé après la mise à jour de protractor (à la version 3.3.0). Peut-être que quelqu'un sait ce qui peut arriver?executeScript ne fonctionne pas
Mes scripts:
PsComponent.prototype.getHighlightedText = function() {
return browser.executeScript_(function getSelectionText() {
var text = "";
if (window.getSelection) {
text = window.getSelection().toString();
} else if (document.selection && document.selection.type != "Control") {
text = document.selection.createRange().text;
}
return text;
});
};
Résultat:
nothing
Et:
PsComponent.prototype.getCaretPosition = function() {
return browser.executeScript(function (input) {
if (document.selection && document.selection.createRange) {
var range = document.selection.createRange();
var bookmark = range.getBookmark();
var caret_pos = bookmark.charCodeAt(2) - 2;
} else {
if (input.setSelectionRange){
caret_pos = input.selectionStart;
}
}
return caret_pos;
});
};
Résultat:
- Failed: JavaScript error (WARNING: The server did not provide any stacktrace information)
Je vous remercie! C'est une excellente alternative pour mes méthodes et cela fonctionne.) Mais c'est un peu magique pour moi pourquoi mes méthodes ne fonctionnent pas maintenant ... –
@ ЛилияСапурина nice! Je pense que vous compliquez trop ces fonctions, nous n'utilisons que les éléments 'selectionStart' et' selectionEnd' d'un élément, pas d'objet 'window' ou' document'. Merci. – alecxe