tutorial locators example español angularjs testing protractor e2e-testing

angularjs - locators - protractor tutorial español



¿Se puede hacer que el transportador funcione lentamente? (3)

Al igual que dijo George Stocker en el comentario, no sé por qué querrías hacer esto ... pero siempre puedes agregar un descanso donde quieras en tu prueba.

browser.sleep(6000);

¿Hay alguna forma de ejecutar una prueba de E2E angular escrita utilizando un transportador lentamente para que pueda ver lo que está sucediendo?


Puede ingresar en ''modo de depuración'' colocando en su código el comando:

browser.pause();

En el modo de depuración, verá la siguiente salida en su terminal:

------- WebDriver Debugger ------- ready press c to continue to the next webdriver command press d to continue to the next debugger statement type "repl" to enter interactive mode type "exit" to break out of interactive mode press ^C to exit

Entonces podrías:

  • Ejecute el comando por comando ingresando c
  • Continúe con la siguiente declaración del depurador (siguiente browser.pause() ) ingresando d
  • Ingrese en modo interactivo donde podría interactuar con todos los elementos al ingresar

A continuación está mi solución para hacer eso. Así que, básicamente, creé un decorador para la función de execute flujo de control actual, que ahora adicionalmente pone en cola un retraso de 100 ms antes de cada acción en cola.

Esto debe ejecutarse antes de invocar cualquier prueba (fuera del bloque de describe )

var origFn = browser.driver.controlFlow().execute; browser.driver.controlFlow().execute = function() { var args = arguments; // queue 100ms wait origFn.call(browser.driver.controlFlow(), function() { return protractor.promise.delayed(100); }); return origFn.apply(browser.driver.controlFlow(), args); };