Publicado: Octubre 13, 2022
Cómo configurar y ejecutar pruebas de Selenium, utilizando diversos constructores y marcos de pruebas de Java
Supongamos que necesitas escribir pruebas con Selenium. Tu plan es escribirlas en Java. Primero, tendrás que elegir el framework de pruebas que usarás para el código de tus pruebas. Luego, necesitarás una herramienta de automatización de compilación para tu proyecto. Quizás ya conozcas el framework y la herramienta de automatización de compilación que usarás, pero no sabes cómo configurarlos para tu proyecto.
En este artículo, analizaremos TestNG y JUnit, dos frameworks de pruebas de Java muy populares. También veremos algunos constructores populares, como Apache Maven, Gradle y Apache Ant. Elegimos TestNG y JUnit por ser los frameworks de pruebas de Java más populares. Si bien TestNG tiene cierta ventaja sobre JUnit, este último se usa con mayor frecuencia en proyectos de desarrollo de software. Demostraremos cómo crear y ejecutar pruebas de Selenium usando estos frameworks y constructores.
Antes de empezar a escribir pruebas y usar frameworks y herramientas de compilación, es necesario asegurarse de que el JDK esté instalado en su estación de trabajo y comprobar el navegador que tiene instalado. Necesitará instalar un IDE y un controlador de navegador, que corresponda al navegador en el que ejecutará las pruebas. Es posible que deba configurar o modificar algunos ajustes del entorno.
Si no tiene instalado el JDK de Java en la estación de trabajo donde va a desarrollar y ejecutar las pruebas, deberá instalarlo. Al momento de escribir este artículo, la última versión disponible de Java es la 11.0.2. Puede descargarla. aquí Tras la instalación, debes configurar java_home como una variable de entorno. Por ejemplo:
Establecer Java_HOME=C:\Archivos de programa\Java\jdk-11.0.2
En los ejemplos de este artículo, usaremos IntelliJ IDEA. Basta con instalar la última versión Community. El menú desplegable permite elegir un paquete de instalación para una versión específica de Java. Como ya tienes instalado JDK 11, selecciona la versión de IDEA para Java 11 (https://www.jetbrains.com/idea/). Si tienes instalada otra versión de JDK, selecciona el paquete de IDEA correspondiente. La siguiente imagen muestra cómo hacerlo.

Instala el controlador correspondiente al tipo y versión del navegador que vayas a usar para las pruebas. En los ejemplos de este artículo, usamos el navegador Google Chrome. Los controladores para Google Chrome se pueden descargar aquí. aquíDescomprímelo en el directorio que prefieras.
Una vez instalado y configurado el conjunto básico de herramientas, podremos pasar a escribir pruebas de demostración.
Para demostrar el uso de un marco de pruebas con una herramienta de compilación, necesitamos un ejemplo de algunas pruebas. En la prueba de ejemplo, abriremos el Sitio web de ExperitestPara acceder a la prueba, busque el enlace «Webcasts» en la página principal de Experitest, haga clic en él y luego revise el título de la página que se abrirá. La prueba de ejemplo se compone de dos archivos: TestBase.java y ViewTest.java. El primer archivo es la clase responsable de la preparación de la prueba, el inicio del controlador del navegador y su configuración. El segundo archivo es la clase que contiene la prueba propiamente dicha. A continuación, se muestra el código:
[java] public class TestBase { protected static WebDriver driver; @BeforeClass public static void setUp(){ System.setProperty(“webdriver.chrome.driver”, “D:\\chrome-driver-73\\chromedriver.exe”); driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); } @AfterClass public static void tearDown(){ driver.close(); driver.quit(); } } System.setProperty(“webdriver.chrome.driver”, “D:\\chrome-driver-73\\chromedriver.exe”); – Este método establece la ruta al controlador de Chrome en su estación de trabajo. El contenido de la clase ViewTest.java: public class ViewTest extends TestBase { @Test public void test() { driver.get(“https://experitest.com/”); WebElement linkToWebinars = driver.findElement(By.linkText(“Webcasts”)); linkToWebinars.click(); WebElement headerForWebinar = driver.findElement(By.xpath(“//div[@class='papers2 image']/p[@class='title1']”)); Assert.assertEquals(headerForWebinar.getText(), “From Tester to Developer: Tips and Insights”); } } [/java]
Los archivos contienen las anotaciones `@BeforeClass`, `@AfterClass` y `@Test`, incluidas tanto en TestNG como en JUnit. El método `Assert.assertEquals` también se utiliza en ambos frameworks y se incluye en la prueba, aunque con un orden de parámetros diferente. En TestNG, el parámetro que se verifica se presenta primero y representa el valor real. El valor esperado es el segundo parámetro. En cambio, en JUnit, el orden de los parámetros es inverso: el valor esperado se presenta primero y el valor real, segundo.
[java]Assert.assertEquals(“De tester a desarrollador: consejos y perspectivas”, headerForWebinar.getText());[/java]
En las siguientes secciones, mostraremos cómo crear y ejecutar pruebas con un framework y un generador específicos, elegidos para este artículo. Suponemos de antemano que ya tiene instalado y configurado JDK, IDEA y un controlador de navegador.
Framework TestNG y Apache Maven
Apache Maven es una herramienta para la gestión de dependencias y la automatización de compilaciones. Maven se basa en convenciones, proporciona comandos predefinidos y prescribe una estructura de proyecto estricta. El archivo de configuración de Maven es pom.xml.
Paso 1
Instala la herramienta Apache Maven para compilar proyectos Java. Para ello, descarga la última versión de MavenAl momento de escribir este artículo, la última versión disponible de Maven era la 3.6.0. Descomprima el archivo en cualquier directorio. Configure las variables de entorno:
[java] set M2_HOME=C:\apache-maven-3.6.0 set PATH=%M2_HOME%\bin. [/java]
Paso 2
Crea un nuevo proyecto Maven en IntelliJ IDEA, añade la información sobre groupID, artifactID y la versión del proyecto. Especifica el nombre y la ubicación del proyecto. Tras estos pasos, se creará la estructura del proyecto y el archivo pom.xml, que controla el proceso de compilación, se colocará en la raíz del proyecto. La captura de pantalla que aparece a continuación muestra la estructura del proyecto y el contenido del archivo de compilación pom.xml. Este archivo contiene parámetros definidos durante la creación del proyecto. De hecho, es necesario definir las dependencias en el archivo de compilación para poder trabajar con pruebas automatizadas y utilizar un framework de pruebas. Además de las dependencias, es necesario definir otros artefactos. Todos los parámetros, artefactos y dependencias se añaden en las secciones correspondientes del archivo pom.xml.

Paso 3
Especifique la lista de bibliotecas para crear las pruebas. Añada el plugin principal: el compilador. Se utiliza por defecto y no es necesario especificarlo, pero puede especificar su versión. Aquí se muestra el contenido de la sección de plugins del archivo de compilación.
[html] org.apache.maven.plugins complemento del compilador de Maven 3.8.0 [/html]
Para trabajar con el framework TestNG, es necesario agregar su definición en la sección de dependencias del archivo pom.xml. La sección de dependencias del archivo pom.xml para la conexión del framework TestNG al proyecto tiene el aspecto que se muestra aquí.
[html 1=”https://mvnrepository.com/artifact/org.testng/testng” 2=”–>” 3=” ” 4=” org.testng ” 5=” testng ” 6=” 6.14.3 ” 7=” ” 8=”[/html” language=””] Los parámetros groupId, artifactId y version se encuentran en el repositorio central de Maven. Simplemente busca TestNG, selecciona la última versión y se mostrará la sección de dependencias con estos parámetros. Cópialos y pégalos en el archivo pom.xml de tu proyecto. De la misma forma, la biblioteca selenium-api se conecta a tu proyecto. Aquí se muestra la sección de dependencias para la conexión con Selenium. [html] org.seleniumhq.selenium API de Selenium 3.14.0 [/html]
Para trabajar con WebDriver y el navegador Chrome, es necesaria la biblioteca selenium-chrome-driver. Añádalo a la sección de dependencias del archivo pom.xml.
[html] org.seleniumhq.selenium controlador de selenio-cromo 3.14.0 [/html]
Además de Maven Central, existe repositorio principal de Maven Puedes obtener toda la información necesaria de. A continuación se muestra el archivo pom.xml configurado para nuestro proyecto.
[html] 4.0.0 Plantilla Plantilla 1.0-INSTANTÁNEA org.seleniumhq.selenium API de Selenium 3.14.0 org.testng testng 6.14.3 org.seleniumhq.selenium controlador de selenio-cromo 3.14.0 org.apache.maven.plugins complemento del compilador de Maven 3.6.0 [/html]
Todas las bibliotecas definidas en la sección de dependencias del archivo pom.xml deben descargarse del repositorio de Maven. Para instalar las bibliotecas necesarias, debes actualizar tu proyecto.
Para ello, haga clic en el botón Reimportar en la ventana de herramientas Proyectos Maven del IDE IDEA. Todas las dependencias especificadas se descargarán y, durante la creación de la prueba, se accederá a las bibliotecas necesarias mediante directivas de importación de Java.

Paso 4
Agrega tus pruebas a la carpeta test.java. En este artículo, hemos añadido ejemplos de pruebas, cuyo código se muestra en el primer párrafo.
Paso 5
Si planeas ejecutar todas las pruebas de forma secuencial, puedes omitir este paso. Pero si planeas gestionar el conjunto de pruebas posteriormente, entonces necesitas usar el archivo testng.xml. Agrega el subdirectorio resources al directorio test y crea un archivo testng.xml dentro de él.

Especifica en tu archivo testng.xml las pruebas que vas a ejecutar. En nuestro caso, según la prueba de ejemplo, hay un conjunto de pruebas con una clase de prueba. Aquí se muestra el contenido del archivo test.xml para la prueba de ejemplo.
[html] [/html]
Dado que definimos las pruebas de lanzamiento en el archivo test.xml, es necesario proporcionar a Maven la información correspondiente. Agregue las siguientes líneas a la sección de plugins del archivo pom.xml. Aquí se muestra el contenido de la sección del plugin correspondiente.
[html] … org.apache.maven.plugins plugin maven-surefire 3.0.0-M3 src/test/resources/testng.xml … [/html]
Paso 6
Ahora, las pruebas se pueden ejecutar en la consola del IDE usando Maven. Introduzca el comando `mvn clean test`. El parámetro `clean` indica a Maven que elimine todas las compilaciones anteriores, si las hubiera, y el parámetro `test` indica a Maven que ejecute las pruebas.

Si siguió las instrucciones, su prueba de ejemplo se ejecutará correctamente. El resultado de la ejecución se muestra en la imagen a continuación.

Framework JUnit y Apache Maven
Los pasos para configurar el framework JUnit con Apache Maven para proyectos son prácticamente los mismos que para el caso en que se utiliza el framework TestNG. La única diferencia reside en el paso 3, donde se añaden las dependencias del framework de pruebas al archivo pom.xml. Aquí estará la sección de dependencias de JUnit del archivo de compilación.
[html] Junit Junit 4.12 prueba [/html]
Introduce el comando `mvn clean test` en la ventana de la terminal y ejecuta las pruebas del proyecto. Los resultados de la ejecución serán los que se muestran en la captura de pantalla a continuación.

JUnit + Gradle:
Gradle es una herramienta de gestión de dependencias y automatización de compilación basada en los conceptos de Ant y Maven. A diferencia de Ant o Maven, Gradle no utiliza archivos XML, sino un lenguaje específico de dominio (DSL) basado en Groovy. Esto da como resultado archivos de configuración más pequeños. Por convención, el archivo de configuración de Gradle se llama build.gradle.
Suponemos que JDK, IDEA y los controladores del navegador están instalados y configurados en su estación de trabajo.
Paso 1
Instala Gradle. La versión actual de Gradle es la 5.4.
Descargue la última versión de https://gradle.org/releases/.
Descomprime el archivo, por ejemplo en el disco local C.
Establezca las siguientes variables de entorno:
GRADLE_HOME=C:\gradle-5.4,
RUTA=%GRADLE_HOME%\bin
Paso 2
Crea un proyecto Gradle en IDEA IDE, selecciona Gradle Builder, especifica la versión del SDK y las bibliotecas y frameworks adicionales. Añade información sobre groupID, artifactID y la versión del proyecto creado. Define las opciones de Gradle. Especifica el nombre y la ubicación del proyecto. Una vez completados estos pasos, se creará la estructura del proyecto y el archivo gradle.build, que controla el proceso de compilación, se colocará en la raíz del proyecto. La captura de pantalla que aparece a continuación muestra la estructura del proyecto y el contenido del archivo de compilación: build.gradle. De hecho, es necesario definir las dependencias en el archivo build.gradle para poder trabajar con pruebas automatizadas y utilizar el framework de pruebas. Además de las dependencias, es necesario definir otros artefactos. Todos los parámetros, artefactos y dependencias se añaden en las secciones correspondientes del archivo build.gradle.

Paso 3
Por defecto, Gradle incluye una referencia al framework JUnit en la sección de dependencias. Puedes verlo en la captura de pantalla anterior. Para añadir referencias a las bibliotecas selenium-api y selenium-chrome-driver en la sección de dependencias de Gradle, debemos buscarlas en el repositorio central de Maven. Luego, en los resultados de la búsqueda, debemos seleccionar la referencia para el constructor de Gradle. La referencia a selenium-API en la sección de dependencias tendrá el siguiente aspecto:
[java] //https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-api compile group: 'org.seleniumhq.selenium', name: 'selenium-api', version: '3.14.0' La referencia a la biblioteca selenium-chrome-driver tendrá el siguiente aspecto: //https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-chrome-driver compile group: 'org.seleniumhq.selenium', name: 'selenium-chrome-driver', version: '3.14.0' [/java]
Una vez configuradas todas las dependencias, actualice el proyecto haciendo clic en el botón de actualización de la barra de herramientas de Gradle, antes de declarar las clases a las que se hace referencia en las directivas de importación.

Agrega tus pruebas a la carpeta test.java. Para ejecutar la prueba, haz clic en el botón Ejecutar tarea de Gradle en la barra de herramientas de Gradle.

En el campo Línea de comandos de la ventana de diálogo que aparece a continuación, defina la tarea que se va a realizar y haga clic en el botón Aceptar. La prueba se iniciará y el registro de la prueba exitosa se imprimirá en la consola y tendrá un aspecto similar al de la imagen siguiente.

TestNG + Gradle:
Los pasos para configurar el framework TestNG con Gradle Builder para proyectos son prácticamente los mismos que para usar JUnit. La única diferencia se encuentra en el paso 3, donde se añaden las dependencias del framework de pruebas al archivo `build.gradle`. Para conectar con TestNG, es necesario reemplazar la referencia a JUnit por la referencia al framework TestNG.
Agrega una referencia al framework TestNG, como se muestra a continuación. Esta cadena hace referencia a la última versión del framework TestNG en el repositorio Maven.
[java] // https://mvnrepository.com/artifact/org.testng/testng testCompile group: 'org.testng', name: 'testng', version: '6.14.3' [/java]
Agrega tus pruebas a la carpeta test.java. Si necesitas administrar tus pruebas, crea el archivo testng.xml. Agrégalo a la carpeta src/test/resources/. Aquí se muestra un ejemplo de la estructura del archivo testng.xml.
[html] [/html]
Para que Gradle busque y ejecute TestNG después de la compilación, debes agregar la tarea de prueba al final del archivo y Especifique dónde se encuentra el archivo testng.xml.
Para ejecutar la prueba, haga clic en el botón «Ejecutar tarea de Gradle» en la barra de herramientas de Gradle. En el campo «Línea de comandos» de la ventana de diálogo que aparece, defina la tarea que se va a ejecutar y haga clic en el botón «Aceptar». La prueba se inicia y el registro de la prueba exitosa se muestra en la consola, con un aspecto similar al de la imagen a continuación.

TestNG + Apache Ant
Apache Ant («Otra herramienta útil») es una biblioteca de Java que se utiliza para automatizar los procesos de compilación de aplicaciones Java. Además, Ant puede usarse para compilar aplicaciones que no son Java. Los archivos de compilación de Ant se escriben en XML y, por convención, se denominan build.xml. La principal ventaja de Ant es su flexibilidad. Ant no impone ninguna convención de codificación ni estructura de proyecto.
Suponemos que JDK, IDEA y el controlador del navegador están instalados y configurados.
Paso 1
Instala Apache Ant. Puedes descargarlo desde el sitio web. sitio oficialDescarga Apache Ant 1.10.5, ya que es compatible con Java 8 y versiones posteriores. Descomprime el archivo descargado, por ejemplo, en tu disco local C. Configura la siguiente variable de entorno:
Establecer ANT_HOME=C:\apache-ant-1.10.5
Establecer PATH=%Java_HOME%\bin;%ANT_HOME%\bin
Paso 2
Crea un nuevo proyecto en el IDE. Como IDEA no ofrece la opción de crear un proyecto Ant, crea un proyecto Java sencillo. Omite la creación del proyecto a partir de una plantilla. Selecciona el nombre y la ubicación del proyecto. Tras completar los pasos de configuración, el proyecto en el IDE tendrá un aspecto similar a la captura de pantalla que se muestra a continuación.

Para dar forma a la estructura del proyecto, agregue las subcarpetas test.java y test.resources.

Paso 3
A continuación, debes añadir las bibliotecas correspondientes. Para ello, descarga las bibliotecas, colócalas en la carpeta `lib` y vincúlalas al proyecto. Crea la carpeta `lib` en tu proyecto y descarga las bibliotecas desde allí. repositorio principal de Maven:
guava-27.0.1-jre.jar – Conjunto de bibliotecas útiles.
jcommander-1.72.jar – la biblioteca para analizar la línea de comandos.
bienhttp-3.14.1.jar – la biblioteca que Selenium utiliza para trabajar con el controlador y el servidor.
okio-1.17.3.jar – una biblioteca adicional que complementa Java.io y Java.nio.
selenium-api-3.14.0.jar – la biblioteca para la creación de scripts de Selenium WebDriver.
selenium-chrome-driver-3.14.0.jar – la biblioteca que Selenium utiliza para trabajar con el controlador web de Google Chrome.
selenium-remote-driver-3.14.0.jar – la biblioteca para la creación de scripts de Selenium WebDriver.
testng-6.14.2.jar – Framework TestNG.
Una vez añadidas todas las bibliotecas, el contenido de la carpeta lib tendrá el siguiente aspecto:

Después, estas bibliotecas deben conectarse al proyecto. En la configuración del proyecto de IDEA IDE, seleccione la opción Módulos. En la pestaña Dependencias, añada la ruta a la carpeta con las bibliotecas.
Paso 4
Crea el archivo de compilación build.xml en la carpeta raíz del proyecto. Define las tareas: limpiar, compilar, probar. A continuación se muestra un ejemplo del archivo build.xml con las tareas definidas.
[html] [/html]
Paso 5
Agrega tus pruebas a la carpeta test.java.
Paso 6
Crea un archivo para gestionar tus pruebas. Agrega el archivo testng.xml a la carpeta src/test/resources/.
[html] Agrega reglas para la compilación y ejecución de pruebas al archivo build.xml: [/html]
Paso 7
Después, añade el archivo de compilación a la herramienta de compilación Ant:
Seleccione la tarea y ejecútela:

En la captura de pantalla que aparece a continuación se muestra el resultado de la ejecución de la tarea.

JUnit + Apache Ant:
Los pasos para crear y ejecutar un proyecto de pruebas Java son los mismos que los descritos anteriormente. La diferencia radica en el primer paso: se descarga e instala la biblioteca JUnit en lugar de TestNG.
junit-4.12.jar – Marco de trabajo JUnit.
hamcrest-all-1.3.jar – una biblioteca adicional necesaria para el funcionamiento de JUnit.
El archivo build.xml para el framework JUnit tendrá el siguiente aspecto.
[html] Las reglas para compilar y ejecutar pruebas se agregan al archivo build.xml de la siguiente manera: [/html]
Añade el archivo de compilación a la herramienta Ant Build Tool. Selecciona la tarea JUnit y ejecútala.

En la siguiente imagen se muestra el registro de compilación y ejecución de pruebas.

En este artículo, hemos analizado y descrito cómo usar los frameworks de Java JUnit y TestNG con herramientas de automatización populares. Ahora ya sabes cómo iniciar tu proyecto de automatización y llevarlo a cabo con éxito.
También puede interesarle
¿Por qué la mayoría de los fallos en las solicitudes financieras no se detectan antes? Release
Un cliente abre su aplicación bancaria para transferir dinero. El…
Appium y los marcos de trabajo móviles modernos: Entendiendo los desafíos de la automatización
La automatización móvil ha madurado significativamente durante la última década, en gran medida…
El mito del bloqueo de la automatización: Migración cuántica sin reescrituras
Mientras hablaba con tantos equipos de control de calidad empresariales como...