¿Cuál es una forma adecuada de pruebas de extremo a extremo (e2e) en Vue?js


De la causa Puedo usar selenium-standalone con xpath para probar una aplicación. Pero probar SPA podría ser un desafío en algún momento.

Pero, por ejemplo el equipo de angularjs proporciona transportador para este propósito.

La razón detrás del transportador, como puedo ver, es que el transportador espera hasta que angularjs se cargue y algunas características más:

Transportador proporciona algunas nuevas estrategias y funciones de localización que son muy útiles para automatizar el Aplicación AngularJS. Ejemplos incluye cosas como: waitForAngular, By.unión, Por.repetidor, Por.textarea, By.modelo, WebElement.todo, WebElement.evaluar, etc.

Entonces, la pregunta es: ¿Es alguna herramienta o mejor práctica para las pruebas e2e en Vuejs?

UPD: siéntase libre de publicar enlaces a tutoriales, ejemplos y todo lo bueno sobre e2e-testing en vue.js. Gracias.

Author: Sergei Panfilov, 2016-04-18

3 answers

La herramienta en la que estás pensando es Nightwatch. Con esto, puede hacer pruebas E2E con Vue.js.

Aún mejor, esto se incluye por defecto cuando está usando vue-cli, listo para ejecutarse.

La línea de comandos para crear un proyecto con Nightwatch activado por defecto es vue init webpack myProjectName.

Aquí están pequeños tutoriales sobre esto.

EDITAR: Últimamente he usado Webdriver.io mucho, y debo decir que lo prefiero a Nightwatch (mejor documentación, comunidad reactiva con un gitero en vivo, problemas que se tratan de manera oportuna, etc.)

 18
Author: Alex,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-17 19:39:36

Recomiendo usar https://devexpress.github.io/testcafe .

Ventajas:

  • fácil de instalar
  • arnés de prueba completo
  • javascript ES2016 con (async/await)
  • sistema de selección flexible
  • aserciones inteligentes con política de reintentos
  • informes

Ver el tutorial simple aquí

 13
Author: mlosev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-02-07 09:40:41

Recomiendo Ciprés.

  • dependencia única del MNP
  • grabación de vídeo desde el primer momento
  • GUI que muestra cada paso de la prueba.

Nuestros documentos son geniales: https://on.cypress.io/intro

Para Vue específicamente ver este tutorial: https://vuejsdevelopers.com/2018/01/29/vue-js-e2e-test-hacker-news / y si desea hacer pruebas unitarias de componentes Vue https://github.com/bahmutov/cypress-vue-unit-test

Feliz prueba.

 3
Author: gleb bahmutov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-31 20:12:56