Configuración de Test Suite para ignorar

Tengo muchas suites de prueba y cada una contiene muchas clases de prueba. Así es como se ven:

import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;

@RunWith(Suite.class)
@SuiteClasses( {ATest.class, BTest.class})
public class MyFirstTestSuite {

    @BeforeClass
    public static void beforeClass() throws Exception {
                // load resources
    }

    @AfterClass
    public static void afterClass() throws Exception {
        // release resources

    }
}

A veces quiero deshabilitar por completo un conjunto de pruebas. No quiero establecer cada clase de prueba como @Ignore, ya que cada conjunto de pruebas carga y libera recursos usando @BeforeClass y @AfterClass y quiero omitir esta carga/liberación cuando se ignora el conjunto de pruebas.

Así que la pregunta es: ¿hay algo similar a @Ignore que puedo usar en todo un Test Suite?

preguntado el 12 de junio de 12 a las 09:06

2 Respuestas

Puede anotar el TestSuite con @Ignore.

@RunWith(Suite.class)
@SuiteClasses({Test1.class})
@Ignore
public class MySuite {
    public MySuite() {
        System.out.println("Hello world");
    }

    @BeforeClass
    public static void hello() {
        System.out.println("beforeClass");
    }
}

no produce ninguna salida.

Respondido el 12 de junio de 12 a las 13:06

SlowTest es una clase definida por el usuario. Puede estar vacío (sin ninguna función o atributo). Puedes ponerle el nombre que quieras:

enter image description here

enter image description here

contestado el 24 de mayo de 17 a las 12:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.