Quiero ejecutar suites de prueba Junit que contengan varias clases de prueba.Ignorar pruebas junit a través de @ExcludeCategory dentro de un conjunto de pruebas
De todas las pruebas, quiero excluir los métodos de prueba anotados con una cierta anotación.
Conozco la anotación @Ignore pero no quiero usarla aquí porque quiero poder ignorar diferentes métodos de prueba si llamo a las pruebas desde diferentes suites de prueba.
Lo he probado y no funciona. Ejecución de mi suite sin @ExcludeCategory (IgnoreMeForSpecialReason.class) se ejecuta la misma cantidad de casos de prueba que se ejecutan con @ExcludeCategory (IgnoreMeForSpecialReason.class)
para ilustrarlo:
Esta suite
//version 1
@RunWith(Categories.class)
@ExcludeCategory(IgnoreForSpecialReasonA.class)
@SuiteClasses({
// add your test classes here
Module1Test.class,
Module2Test.class,
Module3Test.class
})
public class MySuiteA
{
}
corre la misma cantidad de pruebas como lo hace esta versión de la suite:
//version 2
@RunWith(Categories.class)
//@ExcludeCategory(IgnoreForSpecialReasonA.class)
@SuiteClasses({
// add your test classes here
Module1Test.class,
Module2Test.class,
Module3Test.class
})
public class MySuiteA
{
}
Un método de ensayo del módulo 1Test está anotado con la Anotación @IgnoreForSpecialReasonA. Ese método debe omitirse en la versión 1 de mi ejemplo, pero se ejecuta.
¿Cómo puedo lograr que @ExcludeCategory realmente funcione con suites?
¡Salud!
Eso fue, acabo de anotar el método directamente en lugar de hacerlo a través de la anotación @Category. ¡Gracias! – nemoo