tutorial suma software para ejercicios ejemplos descargar configuracion java gradle junit build.gradle junit4

java - suma - No se pueden incluir/excluir las clases de pruebas Junit por categoría usando gradle



junit tutorial (2)

Dadas estas interfaces

testclient.priority.High testclient.priority.Low

y una junit clases anotadas como esta

@Category(testclient.priority.High.class) public class MyTest { ... } @Category(testclient.priority.Low.class) public class MyOtherTest { ... }

Intenté configurar un patrón de inclusión / exclusión en build.gradle como este

useJUnit { includeCategories ''testclient.priority.High'' excludeCategories ''testclient.priority.Low'' }

El problema es que no se ejecutan pruebas , en absoluto. ¿Cómo es la sintaxis exacta para lograr eso? Estoy usando gradle 2.14.1 e invoco las pruebas por "clean build".


Encontré el problema yo mismo. Me perdí el hecho de que

High extends Low

entonces la exclusión afectó correctamente todas las pruebas anotadas. La extensión es intencionada y el patrón correcto en build.gradle sería simplemente:

useJUnit { includeCategories ''testclient.priority.High'' }

De hecho, hay cinco niveles de prioridad y la dependencia de la extensión es una forma fácil de configurar algo así como "ejecutar todo este nivel o más alto".


Esto funciona para mí con Gradle 2.12. No sé qué es diferente entre nuestros entornos respectivos, pero he colocado mi solución en GitHub como referencia.

Tenga en cuenta que he colocado FastTest.java y SlowTest.java en la SlowTest.java src/test/java/net/codetojoy , donde residen las pruebas.