egov 3.9 junit 실행이 안됩니다. context 로드 중 문제가 생기고 있습니다.
- 작성자 :
- 개*자
- 작성일 :
- 2021-12-07 11:56:41
- 조회수 :
- 2,776
- 구분 :
- 개발환경 / 3.9
- 진행상태 :
- 완료
Q
Run on Server 톰캣으로 코드를 실행하면 홈페이지가 문제 없이 작동합니다.
그러나, junit 을 테스트하려고 하면 문제가 발생합니다.
junit 실행 설정 코드는 다음과 같습니다.
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {
"file:src/main/resources/egovframework/spring/com/context-*.xml"
, "file:src/main/resources/egovframework/spring/com/idgn/context-*.xml"
})
같은 방식으로 실행시켰습니다.
컨텍스트 파일을 읽어들이는 중에 datasource가 없다면서 오류가 발생하고 있는 상황입니다.
로그로는 아래 경고가 뜨고
WARN: ....
nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource' available
컨텍스츠 로드 실패가 뜹니다. 너무 길어서 생략했습니다.
java.lang.IllegalStateException: Failed to load ApplicationContext
...........
...........
Error creating bean with name 'messageSource' defined in file ....
...........
............
Error creating bean with name 'securityConfig': Cannot resolve reference to bean 'egov.dataSource' while setting bean property 'dataSource'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource' available
그러나, junit 을 테스트하려고 하면 문제가 발생합니다.
junit 실행 설정 코드는 다음과 같습니다.
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {
"file:src/main/resources/egovframework/spring/com/context-*.xml"
, "file:src/main/resources/egovframework/spring/com/idgn/context-*.xml"
})
같은 방식으로 실행시켰습니다.
컨텍스트 파일을 읽어들이는 중에 datasource가 없다면서 오류가 발생하고 있는 상황입니다.
로그로는 아래 경고가 뜨고
WARN: ....
nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource' available
컨텍스츠 로드 실패가 뜹니다. 너무 길어서 생략했습니다.
java.lang.IllegalStateException: Failed to load ApplicationContext
...........
...........
Error creating bean with name 'messageSource' defined in file ....
...........
............
Error creating bean with name 'securityConfig': Cannot resolve reference to bean 'egov.dataSource' while setting bean property 'dataSource'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'dataSource' available
환경정보
-
- OS 정보 : 윈도우10
- 표준프레임워크 버전 : 3.9
- JDK(JRE) 정보 : 1.8
- WAS 정보 : tomcat
- DB 정보 : mysql
- 기타 환경 정보 : junit
A
안녕하세요.
표준프레임워크센터입니다.
context-datasource.xml 파일을 보시면
공통컴포넌트의 데이터베이스 연결에 프로파일이 필요합니다.
테스트에서 프로파일 설정을 할때는
@ActiveProfiles 어노테이션을 사용하여
@ActiveProfiles("mysql") 과 같이 선언해주셔야 합니다.
감사합니다.
표준프레임워크센터입니다.
context-datasource.xml 파일을 보시면
공통컴포넌트의 데이터베이스 연결에 프로파일이 필요합니다.
테스트에서 프로파일 설정을 할때는
@ActiveProfiles 어노테이션을 사용하여
@ActiveProfiles("mysql") 과 같이 선언해주셔야 합니다.
감사합니다.