20 most popular testng interview questions
Principales preguntas y respuestas de las entrevistas de TestNG más frecuentes con ejemplos para ayudarle en su preparación:
En este artículo, se explica una lista de las preguntas y respuestas de entrevistas más populares y frecuentes sobre TestNG.
Se agregan ejemplos sencillos en los lugares correspondientes para que pueda comprender fácilmente el concepto. Estoy seguro de que estas preguntas le ayudarán a resolver cualquier entrevista de TestNG con éxito.
Preguntas frecuentes de la entrevista de TestNG
P # 1) ¿Qué es TestNG?
Responder: TestNG es el marco creado para ejecutar pruebas unitarias en el programa Java por los desarrolladores.
Los probadores de software también utilizan TestNG para ejecutar de manera eficiente los scripts de prueba automatizados creados en Selenium Webdriver. Su forma completa es el marco 'Testing New Generation'.
cómo implementar una cola en java
Está inspirado en 'JUnit', que es otro marco para pruebas unitarias de programas Java. Además de todas las características de JUnit, TestNG tiene sus nuevas características que lo hacen más poderoso.
P # 2) ¿Cómo instalará TestNG en Eclipse?
Responder:
Siga los pasos a continuación para instalar TestNG en Eclipse:
- Vaya a Eclipse -> Haga clic en 'Ayuda' -> Haga clic en 'Instalar nuevo software'.
- Haga clic en el botón 'Agregar', introduzca el nombre (preferiblemente TestNG) en el cuadro de texto 'Siguiente'. Ingrese en el cuadro de texto 'Ubicación' y haga clic en el botón de acción 'Aceptar'.
- Marque la casilla de verificación TestNG y haga clic en el botón de acción 'Siguiente'. La instalación comenzará y Eclipse se reiniciará después de la instalación.
- Haga clic derecho en el proyecto en Eclipse -> Seleccionar ruta de construcción -> Configurar ruta de construcción.
- Seleccione la pestaña de la biblioteca -> Haga clic en el botón Agregar biblioteca -> Seleccione TestNG-> Haga clic en Siguiente -> Haga clic en Finalizar y Aplicar y cerrar.
P # 3) ¿Cómo ejecutar el script TestNG?
Responder:
Para ejecutar el script TestNG:
Haga clic derecho en la clase en Eclipse, haga clic en 'Ejecutar como' y seleccione 'Prueba TestNG'.
O
Haga clic directamente en el botón Ejecutar en la barra de herramientas del Eclipse.
P # 4) ¿Cuáles son las anotaciones utilizadas en TestNG?
Responder: Hay tres secciones de anotación en TestNG:
(i) Anotaciones de condiciones previas: Estosson las anotaciones de TestNG que se ejecutan antes de la prueba.
@BeforeSuite, @BeforeClass, @BeforeTest, @BeforeMethod son las anotaciones de condición previa.
(ii) Anotación de prueba: Esta es la anotación que solo se menciona antes del caso de prueba (antes del método escrito para ejecutar el caso de prueba)
@Test es la anotación de prueba
(iii) Anotación posterior a la condición: Estas son las anotaciones que se ejecutan después del caso de prueba. (Después de escribir el método para ejecutar el caso de prueba)
@AfterSuite, @AfterClass, @AfterTest, @AfterMethod son las anotaciones posteriores a la condición
P # 5) ¿Cuál es la secuencia de ejecución de las anotaciones en TestNG?
Responder: La secuencia de ejecución de las anotaciones es la siguiente:
|_+_|P # 6) ¿Cuáles son las ventajas de TestNG?
Responder: Las ventajas de TestNG son las siguientes:
- Es un marco de código abierto, por lo que es fácil de configurar.
- Usando TestNG podemos crear sistemáticamente los casos de prueba.
- Proporciona muchas anotaciones que, a su vez, facilitan la creación del caso de prueba.
- Con TestNG, se pueden definir las prioridades de las pruebas y la secuencia de ejecución.
- La agrupación es posible mediante TestNG.
- Genera informes HTML (Selenium Webdriver no puede generar los informes de prueba solo, ayuda a SW a lograrlo).
- La parametrización de datos es posible usando TestNG.
- Además de todas las funcionalidades de JUnit, TestNG tiene sus funcionalidades, lo que a su vez lo hace más poderoso.
P # 7) ¿Cómo establecer prioridades en TestNG?
Responder: Siempre hay más de una prueba o método en la clase. Si no priorizamos estas pruebas o métodos, entonces los métodos se seleccionan alfabéticamente y se ejecutan durante la ejecución.
Si queremos ejecutar las pruebas en la secuencia que queremos, entonces necesitamos establecer la prioridad junto con la anotación @Test.
Esto puede hacerse de la siguiente manera:
@Test (prioridad = 1), @Test (prioridad = 2)
Considere el siguiente ejemplo:
|_+_|En el ejemplo anterior, clickelement () se ejecutará primero ya que la prioridad se establece en 1.
Y getText () se ejecutará después de clickelement () ya que su prioridad se establece en 2.
P # 8) ¿Cómo compartir el informe del proyecto usando TestNG?
Responder: Hay algunas formas de hacerlo:
(I) Después de la ejecución de la clase TestNG, hay una pestaña llamada 'Resultado de la clase en ejecución' que se genera junto a la consola.
Podemos copiar esto y compartirlo.
(ii) Después de la ejecución de la clase TestNG,
- Haga clic derecho en el nombre del proyecto y actualice
- Haga clic en la carpeta 'Salida de prueba'
- Haga clic derecho en el archivo 'index.html' y seleccione propiedades
- Copia el enlace junto a 'Ubicación'
Podemos compartir este enlace para ver el informe de prueba HTML básico que genera TestNG.
Este es el archivo que se genera en su máquina automáticamente después de la ejecución de la clase usando TestNG.
P # 9) ¿Cómo definiría la agrupación en TestNG?
Responder: Podemos definir la agrupación en TestNG usando el atributo de grupos como se muestra a continuación:
@Test (grupos = ”título”)
P # 10) ¿Qué es una dependencia de TestNG?
Responder: Hay algunos métodos de los que dependen muchos métodos.
Por ejemplo, Si queremos probar alguna aplicación, y si la página de inicio de sesión de la aplicación no funciona, no podremos probar el resto de los escenarios.
Entonces, LoginTest es el método del que dependen muchas pruebas.
Por tanto, escribiremos lo siguiente:
|_+_|El código anterior muestra que el método homePageLaunched () depende completamente del método LoginTest ().
Si se pasa LoginTest (), solo entonces se ejecuta el método homePageLaunched ()
P # 11) ¿Qué es InvocationCount en TestNG?
Responder: Si queremos ejecutar un caso de prueba “n” número de veces, entonces podemos usar el atributo invocationCount como se muestra en el siguiente ejemplo.
Ejemplo:
|_+_|En el ejemplo anterior, el método print () se ejecutará 8 veces.
P # 12) ¿Qué es timeOut en TestNG?
Responder: Si algún método en el script tarda mucho en ejecutarse, entonces podemos terminar ese método usando 'timeout' en TestNG.
@Test (tiempo de espera = 5000)
En este caso, el método terminará en 5000 ms (5 segundos) y el caso de prueba se marcará como 'Fallido'.
P # 13) ¿Cómo manejar las excepciones en TestNG?
Responder: Si hay algunos métodos de los que esperamos algunas excepciones, entonces podemos mencionar la excepción en la anotación @Test para que el caso de prueba no falle.
Ejemplo: Si se espera que un método tenga la excepción 'numberFormatException', entonces el caso de prueba fallará debido a esta excepción si no se especifica un bloque try-catch.
Pero podemos hacerlo en TestNG usando el atributo 'excepción esperada' de la siguiente manera.
@Test (excepción esperada = numberFormatException.class)
Entonces el caso de prueba se ejecutará sin fallar.
P # 14) ¿Cuáles son las afirmaciones comunes de TestNG?
Responder: Las afirmaciones comunes de TestNG incluyen:
(I) Assert.assetEquals (Cadena real, Cadena esperada);
- Acepta dos cadenas.
- Si ambas cadenas son iguales, el caso de prueba se ejecuta correctamente; de lo contrario, el caso de prueba falla.
(ii) Assert.assertEquals (Cadena real, Cadena esperada, Mensaje de cadena)
- Acepta dos cadenas.
- Si ambas cadenas son iguales, el caso de prueba se ejecuta correctamente; de lo contrario, el caso de prueba falla.
- El mensaje se imprime si falla el caso de prueba.
(iii) Assert.assertEquals (booleano real, booleano esperado)
- Acepta dos valores booleanos.
- Si ambos valores booleanos son iguales, el caso de prueba se ejecuta correctamente; de lo contrario, el caso de prueba falla.
(iv) Assert.assertTrue ()
- Acepta un valor booleano.
- La aserción pasa si la condición es Verdadera; de lo contrario, se muestra un error de aserción.
(v) Assert.assertFalse ()
- Acepta un valor booleano.
- La aserción pasa si la condición es False; de lo contrario, se muestra un error de aserción.
(nosotros) Assert.assertTrue (, mensaje)
- Acepta un valor booleano.
- La aserción pasa si la condición es Verdadera; de lo contrario, se muestra un error de aserción con el mensaje mencionado.
(vienes) Assert.assertFalse (, mensaje)
- Acepta un valor booleano.
- La aserción pasa si la condición es Falsa; de lo contrario, se muestra un error de aserción con el mensaje mencionado.
P # 15) ¿Cómo deshabilitar una prueba en TestNG?
Responder:
Para deshabilitar una prueba en TestNG, tenemos que usar el atributo 'habilitado' de la siguiente manera:
@Test (habilitado = 'falso')
P # 16) ¿Cuáles son los tipos de afirmaciones en TestNG?
Responder: Para validar los resultados (pasa / falla), tenemos que usar la aserción.
Hay dos tipos de aserción en TestNG:
(i) Afirmación firme:
Hard Assert es la aserción normal que se utiliza para realizar validaciones en la clase TestNG.
Tenemos que usar la clase Assert para una afirmación dura de la siguiente manera:
Assert.assertEquals (valor real, valor esperado);
Si la afirmación dura falla, nada del código se ejecuta después de la afirmación.
(ii) Aseveración suave:
Si queremos continuar la ejecución de la prueba incluso después de que falle la declaración de aserción, entonces tenemos que usar la aserción suave.
Para crear una afirmación suave, tenemos que crear un objeto de una clase 'softAssert' de la siguiente manera:
softAssert sassert = new softAssert ();
sassert.assertAll ();
Así que ahora, si el caso de prueba falla, la ejecución no se termina cuando usamos soft assert.
P # 17) ¿Cómo pasar el parámetro en el caso de prueba a través del archivo testng.xml?
Responder: Si tenemos una clase en la que se define un método de inicio de sesión, podemos pasar los parámetros de inicio de sesión a este método de inicio de sesión desde el archivo testing.xml
Tendremos que usar la anotación “@parameters” de la siguiente manera:
|_+_|Ahora, vaya al archivo testng.xml e ingrese los parámetros allí de la siguiente manera:
|_+_|P # 18) ¿Cuál es la necesidad de crear un archivo testng.xml?
Responder: Cuando probamos un proyecto usando Selenium Webdriver, tiene muchas clases. No podemos elegir estas clases una por una y ponerlas para la automatización. Por lo tanto, necesitamos crear una suite para que todas las clases se ejecuten en una única suite de pruebas.
Podemos lograr esto creando un archivo testing.xml.
P # 19) ¿Cómo crear un archivo XML en TestNG?
Responder: Vaya a la carpeta src -> haga clic en el archivo -> ingrese el nombre del archivo (principalmente escrito testing.xml)
Luego, haga clic en finalizar.
diferencia entre espera implícita y explícita en selenio
Tenemos un archivo XML en blanco. Aquí, tenemos que mencionar el nombre del proyecto y las clases a ejecutar junto con el nombre del paquete como se muestra a continuación.
|_+_|Para ejecutar este archivo, tenemos que ir a testng.xml en el explorador de paquetes, hacer clic con el botón derecho y ejecutarlo como -> TestNG suite
P # 20) ¿Cómo lanzar una excepción SKIP en TestNG?
Responder: Si queremos SALTAR cualquier prueba usando testing, entonces tenemos que usar la excepción SKIP en TestNG.
Está escrito como sigue:
|_+_|¡¡Te deseamos todo lo mejor para tu entrevista !!
Lectura recomendada
- Preguntas y respuestas de la entrevista
- Preguntas de la entrevista de Spock con respuestas (las más populares)
- Más de 20 preguntas y respuestas de entrevistas .NET
- Preguntas y respuestas de la entrevista de prueba ETL
- Las 20 preguntas y respuestas más importantes de la entrevista de pruebas de API
- Más de 30 preguntas y respuestas populares de entrevistas sobre pepino
- Las 50 preguntas y respuestas más populares de la entrevista CCNA
- Las 40 preguntas y respuestas más populares de la entrevista J2EE que debe leer