web-dev-qa-db-fra.com

Le navigateur browser.sleep () n'est pas en cours d'exécution

Comme ci-dessous, vous pouvez voir que le browser.sleep est supposé être exécuté si le client est XYZ, mais qu'il ne soit toujours pas exécuté. 

Si je mets un fichier console.log après l'instruction browser.sleep, cette instruction est en cours d'exécution (je peux voir l'instruction), mais le browser.sleep n'attend pas vraiment, même si le temps de sommeil augmente.

Pourquoi le browser.sleep ne fonctionne pas? Comment puis-je attendre si le client XYZ?

           if (testproperties.client == 'ABC'){
                browser.ignoreSynchronization = false;
                browser.waitForAngular();
                browser.ignoreSynchronization = true;    
            }
            else if (testproperties.client == 'XYZ'){
                browser.sleep('35000');
            };
8
prav kum

Est-ce que vous passez le type int en paramètre? On dirait que c'est de la ficelle. Essayer

browser.sleep(35000)

Vérifiez également pourquoi vous pourriez avoir besoin d'un sommeil aussi énorme? Peut-être que vous voulez plutôt browser.wait()?

9
Xotabu4

Essayez la réponse suivante.

if (testproperties.client == 'ABC'){
    browser.ignoreSynchronization = false;
    browser.driver.sleep(2000);
    browser.ignoreSynchronization = true;    
}
else if (testproperties.client == 'XYZ'){
    browser.driver.sleep(2000);
};

J'espère que cela t'aides. :)

1
Manuli Piyalka

Essayez de résoudre la promesse.

browser.sleep(35000).then(
  function(){
     console.log("Waiting");
  }
)

Ou mettre à jour le rapporteur jusqu'à la dernière version

npm install protractor@latest --save
0
Oscar