Selenium: sistema de pruebas para aplicaciones web

Selenium es una plataforma para hacer “testing” en el browser. Basicamente puedes automatizar el uso de tu aplicación web y repetir el proceso cuantas veces sea necesario para verificar que está haciendo lo que se supone. Mira la introducción de 2 minutos.

Selenium está dividido en 3 productos. El primero Selenium IDE es un plugin para Firefox que permite crear pruebas fácilmente. Estas pruebas se pueden exportar como un script en Java, Ruby, Python y otros para ser usado en los demás productos.

El segundo producto es Selenium Remote Control, este te permite correr pruebas de selenium en los demás navegadores, no solo Firefox. Además te permite correr en todos los sistemas operativos populares y algunos no tan populares.

Finalmente está Selenium Grid este te permite configurar varios servidores para distribuir pruebas y hacer el proceso más rápido. Esto es solo necesario para personas o empresas que tengan “test suites” extensos que necesiten correr en multiples plataformas y navegadores.

Si como a mi, no te interesa o no tienes tiempo para invertirlo en configurar este sistema en varias maquinas, estás de suerte. Hay un servicio que se llama Sauce Labs que se dedica a proveer infraestructura para Selenium en el cloud. Basicamente preparas tus pruebas envias el script a Sauce Labs y listo en unos minutos tienes los resultados con grabación de vídeo y todo.

La idea de hacer testing a aplicaciones web no es nueva pero la verdad es que no mucha gente lo hace. Casi todas las personas que conozco que hacen testing se limitan al código en el server y no a la presentación final en el browser. Es importante entender que nuestra aplicación es lo que los usuarios ven en el browser y es ahí donde debemos hacer nuestras pruebas. Una herramienta como Selenium hace esto más eficiente y fácil.