test suiteclasses java unit-testing testing junit test-suite

java - test - @suiteclasses



¿Por qué usar las suites de prueba JUnit? (1)

Las suites le permiten ejecutar varias clases de prueba donde puede ejecutar rutinas antes y después de toda la suite.

Las pruebas que requieren una configuración de base de datos vienen a la mente,

  1. cargar una base de datos en la memoria (no puede permitirse hacerlo antes y después de cada prueba de unidad)
  2. Ejecutar todos los casos de prueba
  3. Descargar en la base de datos de memoria cuando se hace todo el conjunto.

    @RunWith(Suite.class) @Suite.SuiteClasses({ MyUnitTests.class }) public class MySuiteTest { @ClassRule public static H2TestRule h2TestRule = new H2TestRule(); }

Aquí, H2TestRule es una Rule para toda la suite en lugar de un solo caso de prueba.

Voy a implementar algunas pruebas unitarias utilizando JUnit en algunas tareas futuras para el trabajo. Tengo poca experiencia con JUnit de mi empleador anterior, pero mientras estudiaba, me encontré con suites de prueba. No tengo idea de si los usaré, pero estaba particularmente interesado en saber por qué existen.

¿Puede alguien darme una situación práctica en la que alguna vez quiera usar un conjunto de pruebas y, además, cuáles son las ventajas de usar conjuntos de pruebas en lugar de solo usar varios exámenes independientes?

EDIT: Siento que esta pregunta no es un duplicado, ya que otras respuestas a preguntas similares dan una definición general o un fragmento de código (por lo que pude ver) y estoy buscando un uso más práctico de las suites desde una perspectiva de diseño . Me gustaría saber por qué agrupar las pruebas puede ser una buena idea, o por qué no lo es, etc.