Protractor: Transportador browser.sleep () no se está ejecutando.

Creado en 1 jul. 2016  ·  3Comentarios  ·  Fuente: angular/protractor

A continuación, como puede ver, se supone que el browser.sleep debe ejecutarse si el cliente es XYZ, pero aún así no se está ejecutando. Si pongo cualquier console.log después de la declaración browser.sleep, esa declaración se está ejecutando (puedo ver la declaración) pero el browser.sleep no está realmente esperando a pesar de cuánto aumento el tiempo de suspensión.

¿Por qué el browser.sleep no funciona? ¿Cómo lo hago esperar si el cliente XYZ?

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

Comentario más útil

@ gamecheck80 elimina las comillas simples en el

// use like this
browser.sleep(35000);

Todos 3 comentarios

@ gamecheck80 elimina las comillas simples en el

// use like this
browser.sleep(35000);

Realmente rápido para una aclaración: browser.sleep devuelve una promesa. Mirando esto de cerca:

  • browser.sleep llama a webdriver.sleep
  • webdriver.sleep pide que el flujo de control haga un tiempo de espera
  • timeout llama al retraso que al final llama al método setTimeout y esto podría ser una cadena siempre que esa cadena sea un número.

browser.sleep ('35000') es una entrada aceptable.

Debido a que browser.sleep devuelve una promesa, solo parecerá que funciona si espera a que finalice la promesa.

describe('browser', function() {
  it('should sleep', function() {
    browser.get('http://angularjs.org');

    // does not work
    // browser.sleep(10000);
    // console.log('waited 10 seconds?');
    // this does not work and "waited 10 seconds?" appears immediately after navigating

    // after sleeping then print "waited 10 seconds"
    browser.sleep(10000).then(function() {
      console.log('waited 10 seconds');
    });
  });
});

Ojalá esto ayude. Para obtener más ayuda, haga sus preguntas de soporte en StackOverflow , la lista de discusión de Google Group o Gitter . Para obtener más información, consulte https://github.com/angular/protractor/blob/master/CONTRIBUTING.md#questions

¡Gracias!

browser.sleep (10000). then (function () {
console.log ('esperó 10 segundos');
});
Usar esto con Angular 6 y la versión 5.4.1 del transportador no funciona, al menos eso es lo que estoy viendo

¿Fue útil esta página
0 / 5 - 0 calificaciones