Utilizar un constructor vacío es la solución más sencilla. Aún puede anular el constructor en la clase extendida.
Pero no es óptimo con toda la herencia. Es por eso que JUnit 4 usa anotaciones en su lugar.
Otra opción es crear un método auxiliar en una clase factory / util y dejar que ese método haga el trabajo.
Si está usando Spring, debería considerar usar la @TestExecutionListenersanotación. Algo como esta prueba:
@RunWith(SpringJUnit4ClassRunner.class)
@TestExecutionListeners({CustomTestExecutionListener.class,
DependencyInjectionTestExecutionListener.class})
@ContextConfiguration("test-config.xml")
public class DemoTest {
Spring AbstractTestExecutionListenercontiene, por ejemplo, este método vacío que puede anular:
public void beforeTestClass(TestContext testContext) throws Exception {
}
NOTA: NO pase por alto / pase por alto DependencyInjectionTestExecutionListeneral agregar personalizado TestExecutionListeners. Si lo hace, todos los cables automáticos serán null.