para - junit jar
¿Cómo lograr que Junit 4 ignore una clase de prueba base? (4)
Tengo una clase base para muchas pruebas que tiene algunos métodos de ayuda que todos necesitan.
No tiene por sí mismo ninguna prueba, pero JUnit (en eclipse) invoca el corrector de prueba y se queja de que no hay métodos para probar.
¿Cómo puedo hacer que ignore esta clase?
Sé que podría agregar un método dummyTest
que resolvería el problema, pero también aparecería para todas las clases de niños.
Sugerencias?
Use para anotar @Ignore
. También funciona en clases. Mira este:
@Ignore public class IgnoreMe {
@Test public void test1() { ... }
@Test public void test2() { ... }
}
Además, puede anotar una clase que contenga métodos de prueba con @Ignore y no se ejecutará ninguna de las pruebas que lo contengan.
Fuente: JUnit JavaDoc
Solo como una nota, siempre recomendaría dar una razón para ignorar:
@Ignore("This test will prove bug #123 is fixed, once someone fixes it")
Espero que el formateador de informes junit xml, utilizado al ejecutar pruebas de hormiga, incluya algún día el recuento ignorado (y los motivos) junto con el pase, el error y el error.
Hacer la clase abstract
debería ser suficiente para JUnit 4. Si no funciona, comprueba qué versión de JUnit estás usando.
Esto también comunica su intención de que esto sea solo un fragmento de una prueba.
También evita que JUnit cuente las pruebas en la clase como "ignoradas" (por lo que el recuento final de las pruebas ignoradas será el esperado).
Alternativamente, cambie el nombre de la clase. La mayoría de los corredores usan el nombre de la clase para determinar qué clases son pruebas y cuáles son ayudantes. En Maven con la configuración predeterminada, solo tienes que asegurarte de que la clase base no comienza o finaliza con Test
y no finaliza con TestCase
( http://maven.apache.org/surefire/maven-surefire-plugin/ examples / inclusion-exclusion.html )
Hay 2 opciones:
Debes crear el resumen de la clase de prueba base, eso es suficiente para Junit4. Si usa el atributo @Igonre, lo mostrará como una prueba ignorada (y lo agregará al recuento total de pruebas).
Puede cambiar el nombre de la clase de prueba de que no tendrá la palabra Prueba (distingue entre mayúsculas y minúsculas) al comienzo o al final del nombre de la prueba / o la palabra TestCase al final.
Por cierto: @Igonre es para un caso de uso diferente, cuando desea ignorar una prueba específica.