TestCafe: tu aliado ideal para pruebas automatizadas

  • Es flexible y extensible.
  • Utiliza JavaScript o TypeScript como lenguaje de programación para las pruebas, haciéndolo entendible por humanos.
  • Al ser escrito en JavaScript o TypeScript puede tomar ventaja de las librerías y preprocesadores de terceros.
  • No depende de ningún otro software para poder ser ejecutado, es independiente, únicamente es cuestión de instalarlo a través de Node.js y será ejecutado en los navegadores que tengas instalados.
  • Tiene la habilidad de hacer Mock de solicitudes HTTP.
  • Utiliza un proxy inverso interno.
  • Es posible ejecutar pruebas con múltiples ventanas del mismo navegador.
  • Es posible ejecutar pruebas en paralelo.
  • No requiere de un Web Driver para la creación de las pruebas.
  • Elimina automáticamente los tiempos de espera para los elementos del Document Object Model (DOM), con esto, podemos evitar el típico “timeout” que podemos obtener por un elemento que se demora en cargar y que puede botar toda nuestra prueba .
  • Utiliza el método de Hooks, es decir, puede ejecutar tareas antes de cada prueba o después de cada prueba.
  • Cuenta con assertions propias de la herramienta.
  • Cuenta con asistencia para realizar “debug” de las pruebas, es decir, es posible parar las pruebas y revisar los estados de la misma.
  • Permite la ejecución de las pruebas en diferentes navegadores de manera simultánea.
npm install -g testcafe
  • Inicialmente, importamos el módulo ‘Selector’ desde Testcafe.
  • Seguido de ello debemos crear un ‘fixture’ (grupo de pruebas que contengan la misma url) en la que definiremos una cadena de texto con el nombre del conjunto de pruebas junto con el método ‘page’ (url de inicio de pruebas).
import { Selector } from “testcafe”; fixture `Login Test with TestCafe` .page(`http://example.com`)
test(‘Successful login’, async t => { //Use the different actions TestCafe have to interact with the page .expect(/*Use the assertion to check if the actual state is the same as the expected one */ ); })
testcafe chrome ./tests
  • Pruebas exitosas
  • Pruebas fallidas
Ejemplo de barra de estado en TestCafe

--

--

--

Our thoughts and opinions on technology, innovation, social justice and much more! www.thoughtworks.com

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Thoughtworks Chile, Ecuador & Spain

Thoughtworks Chile, Ecuador & Spain

Our thoughts and opinions on technology, innovation, social justice and much more! www.thoughtworks.com

More from Medium

Testing software with JUnit 5, Spring and Pitest.

Let’s talk about testing

Choosing the right Tools and Frameworks for Test Automation

Design Pattern — 5