У меня есть приложение Spring 4.3, которое работает нормально.Я пытаюсь использовать JUnit 4.11, но контекст не загружается.
Причина: org.springframework.beans.factory.NoSuchBeanDefinitionException: Нет квалифицирующего компонента типа 'caesb.websupport.service.BatchSolicitacaoService 'доступно: ожидается, по крайней мере, 1 bean-компонент, который считается кандидатом autowire.Аннотации зависимостей: {@ javax.inject.Inject ()}
base-spring-application.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans>
....
<tx:annotation-driven proxy-target-class="true" transaction-manager="transactionManager" />
<context:annotation-config />
<context:component-scan base-package="caesb">
</context:component-scan>
</beans>
test-spring-application.xml
Имеется только конфигурация источника данных.
BatchSolicitacaoService.java
@Service
public class BatchSolicitacaoService extends BaseEntityService<BatchSolicitacao>
{
...
}
PriorizacaoHidrometroDWService.java
@Service
public class PriorizacaoHidrometroDWService extends BaseEntityService<PriorizacaoHidrometroDW>
{
...
@Inject
private BatchSolicitacaoService batchSolicitacaoService;
}
BasicTest.java
@RunWith(SpringJUnit4ClassRunner.class)
@TestExecutionListeners( { DependencyInjectionTestExecutionListener.class})
@ContextConfiguration({"classpath*:/base-spring-application.xml","classpath*:/test-spring-application.xml"})
@Transactional
public class BasicTest
{
@Test
public void test() {
System.out.println("teste teste");
}
}
Я добавил @TestExecutionListeners, но безуспешно.Я удалил @Transaction, но тоже безуспешно.