Ninguna de las otras respuestas lo hizo por mí. Tenía 40k pruebas que necesitaba ejecutar, por lo que enumerar manualmente cada clase no era una opción.
Lo hice con ClasspathSuite.Un conjunto de pruebas que se ejecuta todos los casos de prueba junit4 y Junit3 en la ruta de clase es el siguiente:
import org.junit.extensions.cpsuite.ClasspathSuite;
import org.junit.extensions.cpsuite.ClasspathSuite.*;
import org.junit.runner.RunWith;
import org.junit.runner.JUnitCore;
import static org.junit.extensions.cpsuite.SuiteType.*;
@RunWith(ClasspathSuite.class)
@SuiteTypes({ JUNIT38_TEST_CLASSES, TEST_CLASSES })
public class RunAllSuite {
/* main method not needed, but I use it to run the tests */
public static void main(String args[]) {
JUnitCore.runClasses(RunAllSuite.class);
}
}
que necesitaba para ejecutarlo desde la línea de comandos, así que esto es lo que hice:
- Downloaded cp-1.2.6.jar
- Crear el ya mencionado RunAllSuite
- compilar la clase,
javac RunAllSuite.java -cp cpsuite-1.2.6.jar;junit-4.8.1.jar
- plazo con las pruebas de destino en la ruta de clase,
java -cp cpsuite-1.2.6.jar;junit-4.8.1.jar;path/to/runallsuite/folder;target/classes;target/test-classes RunAllSuite
Y eso es todo. Con RunAllSuite arriba, en cualquier parte de tu código, puedes hacer JUnitCore.runClasses (RunAllSuite.class), que ejecuta todas las pruebas en la ruta de clase. También hay otras opciones de configuración que se explican en la página de inicio de ClasspathSuite.
Tenga en cuenta también que la clase dada arriba no imprime nada. Si lo que se necesita, se puede hacer
import org.junit.extensions.cpsuite.ClasspathSuite;
import org.junit.extensions.cpsuite.ClasspathSuite.*;
import org.junit.runner.RunWith;
import org.junit.runner.JUnitCore;
import org.junit.internal.TextListener;
import static org.junit.extensions.cpsuite.SuiteType.*;
@RunWith(ClasspathSuite.class)
@SuiteTypes({ JUNIT38_TEST_CLASSES, TEST_CLASSES })
public class RunAllSuite {
public static void main(String args[]) {
JUnitCore junit = new JUnitCore();
junit.addListener(new TextListener(System.out));
junit.run(RunAllSuite.class);
}
}
Vea si esto ayuda: http://burtbeckwith.com/blog/?p=52 –