66 votes

Exclure un test non param dans la classe de test paramétrée

Y a-t-il une annotation dans JUnit pour exclure un test non param dans la classe de test paramétrée?

12voto

AmanicA Points 1996

Je viens de découvrir que l'on peut utiliser JUnitParams . J'ai converti l'un de mes tests maintenant pour l'utiliser et cela fonctionne à merveille.

6voto

Jeanne Boyarsky Points 5968

Non. La meilleure pratique consiste à déplacer ces tests non paramétrés vers une classe différente (fichier .java)

3voto

AmanicA Points 1996

Zohhak test runner est un moyen plus simple de paramétrer des tests spécifiques. Merci Piotr!

2voto

Phil Ninan Points 198

J'ai pu faire quelque chose de très similaire à la réponse de Matthew Madson et j'ai trouvé utile de créer une classe de base pour encapsuler la configuration et les fonctions d'assistance communes entre les tests single et param. Cela fonctionne sans utiliser Enclosed.class .

  @RunWith(Suite.class)
 @SuiteClasses({ComponentTest.ComponentParamTests.class, ComponentTest.ComponentSingleTests.class})
 public class ComponentTest {

    public static class TestBase {
        @Spy
        ...
        @Before
        ...
    }

    @RunWith(Parameterized.class)
    public static class ComponentParamTests extends TestBase{
        @Parameter
        ...
        @Parameters
        ...
        @Test
        ...
    }
    public static class ComponentSingleTests extends TestBase{
        @Test
        ...
    }
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X