Selenium con Java capítulo 1: Setup del proyecto

En el capítulo anterior vimos que vamos a hacer y con qué herramientas. Ahora vamos a ver como instalar todas esas herramientas.

Obviamente como todo, el contenido lo pueden encontrar en este video que pongo a continuación

JDK

Lo primero que vamos a necesitar si vamos a programar usando Java es el JDK (Java developement kit), el cual vamos a poder descargar de aquí.

Luego de buscar la versión que necesiten dependiendo del sistema operativo que tengan, van a tener un «license agreement» sobre la caja donde van a ver las versiones a bajar

Solo clickeen ahí.

Una vez que baje, el proceso es de lo más sencillo. Solo darle a siguiente (y no bajar si ni quieren ningún otro software que les proponga el instalador).

Maven

Lo siguiente es instalar Maven para poder trabajar más sencillamente con los paquetes (cosa que ya discutimos en la entrada anterior). La cosa es sencilla, solo deben entrar al sitio de Maven y presionar en Download.

Una vez ahí, simplemente es buscar la instalación que quieran, bajarlo y descomprimirlo donde quieran (y no se olviden agregarlo al path).

WebDrivers

Bien, ya tenemos el lenguaje, ya tenemos nuestro «gestor de paquetes». Ahora necesitamos algo a lo que podamos pegarle con nuestro código para que maneje el browser, y aquí es donde entran los webdriver.

Si quieren usar el webdriver de Chrome, aquí tienen el sitio.

Si quieren usar Firefox, entonces usen geckoDriver. Y así podemos buscar los webdrivers del browser que queramos.

Eclipse

Ya tenemos todo para nuestro proyecto, pero aun no definimos adonde y con qué lo vamos a escribir. Mi recomendación (y esto va en gustos) es usar Eclipse. Para mi un IDE ideal para proyectos Java (funciona para otros lenguajes pero Java es su «fuerte»).

Simplemente entren al sitio de Eclipse y van a encontrar un botón de download.

Siguen el camino a la descarga y luego, todo es tan sencillo como con cualquier instalador (siguiente, siguiente, siguiente, etc.).

Con todo esto instalado, ya tenemos el ambiente para comenzar nuestro camino a la automatización. Para no alargar demasiado este post, en el próximo capítulo vamos a seguir analizando el video que puse al inicio y vamos a hablar de como armar nuestro proyecto.

Selenium con Java Capítulo 0: Hablemos de Selenium

Vamos a comenzar a ver en este blog como hacer pruebas automatizadas. Se que muchos de los que están leyendo están esperando ver estos artículos.

Todo lo que voy a ir poniendo es una extensión del material que pongo en mi canal por lo que si ya siguen el canal sigan leyendo que voy a tratar de extenderme un poco sobre el tema y si no, este es un buen momento para suscribirse y poder así seguir los tutoriales que tengo al respecto.

Pero comencemos desde el principio: ¿Qué vamos a hacer durante el curso? ¿Con qué? Empecemos por el principio…

La idea de este curso o tutorial o como quieran llamarlo es no solo poder automatizar pruebas sino también hacerlo de la manera correcta, con código prolijo, siguiendo buenas prácticas, etc. Esto nos va a traer muchos beneficios:

  • Framework escalable: Si hay que agregar nuevas funcionalidades tiene que ser sencillo agregarlas. Con el paso del tiempo, si el sistema crece, no debe ser tan complicado que el framework crezca con el.
  • Mantenible: Si el código está bien escrito tiene que ser sencillo mantenerlo.
  • Legible: Cualquier persona que entre al proyecto va a poder entender rápidamente que está pasando y poder sumarse a ser productivo pronto.
  • Heredable: Si un día uno decide dejar el proyecto, quién lo suceda puede seguir rápidamente.

Qué vamos a necesitar para el curso?

  • Java JDK
  • Maven
  • Selenium
  • TestNG
  • Eclipse (Esto es a gusto mío y con lo que voy a mostrar el código, si les gusta otra cosa sientanse libres)
  • Git

Por qué utilizar Java para automatizar

Java tiene la particularidad de ser un lenguaje utilizado en muchísimos proyectos y sin dudas es buena idea automatizar en el mismo lenguaje que está siendo utilizado para el proyecto o la tecnología que use quién necesite la automatización. Tener todo en un mismo lenguaje suele tender puentes dentro de sistemas.

Por otro lado, su manejo de la programación orientada a objetos es muy buena y hace sencillo dedicarse a automatizar.

También es sencillo encontrar material de ayuda y la comunidad de desarrolladores es enorme, lo cual hace también más sencillo conseguir apoyo a la hora de programar.

Maven

Maven es un gestor de proyectos ampliamente utilizado en Java, que básicamente lo que hace es descargar y dejar preparadas las librerías y configuraciones que necesitemos para el proyecto de manera automática.

Con esto no van a tener que ponerse a buscar que librerías necesitan en un momento y como deben ser configuradas, ustedes solo tienen que decirle que quieren usar en el proyecto usando POM (Project Object Model), una especie de XML que les va a servir. En el video que presento en este posteo van a encontrar ejemplos.

TestNG

Durante el curso vamos a necesitar una librería de UnitTest (aunque no la vamos a usar para tests unitarios) para poder decirle a un conjunto de instrucciones que son un test. Java tiene dos grandes candidatos a ser usados, jUnit y TestNG. Personalmente me inclino por TestNG por la facilidad que tiene para hacer suits de testing, pero ya vamos a adentrarnos en esto.

Necesitamos un repositorio…

Y por eso necesitamos Git. Pueden descargar el software de aquí. La idea es que con esto van a poder guardar su código para poder recuperarlo en cualquier máquina, tener control de versiones, van a poder hacer varias ramas y unirlas nuevamente en la principal y muchas cosas más. Lugares donde pueden dejar su código son github, bitbucket, gitlab, etc.

Con todo esto dicho, les recomiendo miren el video introductorio al curso, que lo dejé arriba de todo donde explico con más detalle alguno de los puntos.

En la próxima entrada vamos a empezar a hacer código!!!!