Je veux écrire une certaine condition pour STROCOR AutoTest.
Exemple: Pour celui-ci, j'ai essayé d'utiliser le code: p> i reçoit la réponse: p> var currentUrl = browser.getCurrentUrl().then( function( url ) {
console.log(url);
});
4 Réponses :
Si vous voulez simplement comparer l'URL actuelle avec CompareRurl, vous pouvez simplement utiliser Browser.getCurcurrentturl ();
var currentUrl = browser.getCurrentUrl(); if(currentUrl === comparedUrl) { //do first } else { //do second }
Utiliser ASYNC AWAIT
(async()=>{ var url = await browser.getCurrentUrl(); console.log(url) })()
Avez-vous essayé quelque chose comme ça? J'espère que cela aide. P> P>
Browser.getCurrentturl () Code> Vérifiez comment les promesses fonctionnent. Dans l'exemple suivant: p> xxx pré> browser.getcurrentturl () code> et le rappel chaîné suivant ont le même type de retour prometteur code>. Cela signifie que CurrentURL code> n'a pas de valeur de chaîne. Vous devrez soit avoir besoin de continuer à enchaîner vos éluables ou de changer cela en async / attendre. P> Configuration async / attendre H2>
Vous devez ajouter le selenium_promise_manager: false Code> dans votre configuration de Protractor. Ensuite, dans votre test, vous pourrez attendre des promesses. P> it('should do something', async () => {
const currentUrl = await browser.getCurrentUrl(); // promise is awaited, result is a string.
console.log(`current url = ${currentUrl}`);
});
Merci pour une explication, des informations très utiles :)
Aucun problème! Bonne chance avec vos tests de protracteurs!
Mettez à jour la question avec la chaîne que vous attendez de votre URL actuelle.