Dans mon script Protractor, j'appelle browser.ignoreSynchronization=false;
après la deuxième instruction (après l'instruction de connexion), mais il est appliqué avant l'instruction de connexion, car les instructions sont exécutées dans l'ordre 1> 3> 2. ci-dessous est mon code.Exécution séquentielle des instructions de script protractor
browser.ignoreSynchronization= true;//1
loginPage.login(loginData.free.username,loginData.free.password);//2
browser.ignoreSynchronization=false;//3
Cependant, si j'utilise protractor.promise.controlFlow()
comme ci-dessous il fonctionne très bien. Mais comment forcer des scripts protractor à exécuter séquentiellement sans utiliser protractor.promise.controlFlow()
.
browser.ignoreSynchronization= true;
var flow = protractor.promise.controlFlow();
flow.execute(function() {
loginPage.login(loginData.free.username,loginData.free.password);
browser.ignoreSynchronization=false;
}
écoulement var = protractor.promise.controlFlow(); est-ce nécessaire d'utiliser? –
@SureshSalloju si je n'utilise pas 'var flow = protractor.promise.controlFlow();' je reçois '"window.angular est indéfini.' erreur – Jlearner
Pouvez-vous mettre browser.ignoreSynchronization = true, cette déclaration dans la méthode beforeAll() si vous utilisez jasmine.Il doit être déclaré avant d'appeler la méthode browser.get() –