Qual é a diferença entre SpringJUnit4ClassRunner e SpringRunner

88

Sempre que vejo uma postagem de blog relacionada aos testes do Spring, vejo uma dessas classes, mas não entendo a diferença real:

@RunWith(SpringRunner.class)
@RunWith(SpringJUnit4ClassRunner.class)
Humoyun Ahmad
fonte

Respostas:

30

@RunWith(SpringRunner.class)diz ao JUnit para executar usando o suporte de teste do Spring. SpringRunneré o novo nome de SpringJUnit4ClassRunner, é apenas um pouco mais agradável para os olhos.

SpringRunner está disponível apenas no teste de mola 4.3.

SpringRunnerclasse estende SpringJUnit4ClassRunner.

Código-fonte de SpringRunneré

package org.springframework.test.context.junit4;

import org.junit.runners.model.InitializationError;

public final class SpringRunner extends SpringJUnit4ClassRunner {

    public SpringRunner(Class<?> clazz) throws InitializationError {
        super(clazz);
    }

}
Joby Wilson Mathews
fonte
7
isso parece ser uma duplicata de uma resposta anterior.
StvnBrkdll
7
isso adicionou mais informações para entender a relação de detalhes entre SpringRunner& SpringJUnit4ClassRunner.
Eddy