test 3

학습 // Spring // MVC // Test

업데이트 :: 2018.08.22 스프링 MVC 테스트MockMvcMockMvc 란MockMvc 설정테스트 실행요청 데이터 설정실행 결과 검증실행 결과 출력스프링 MVC 테스트스프링 MVC 컨트롤러의 테스트컨트롤러의 주요역할은 다양컨트롤러의 주요역할요청 경로처리내용의 매핑입력값 검사요청한 데이터의 취득비즈니스 로직 호출다음 이동 화면의 제어정작 컨트롤러 자체에는 단위 테스트가 필요할 만한 비즈니스 로직이 존재하지 않음스프링 MVC의 프레임워크 기능까지 통합된 상태인 통합 테스트의 관점으로 봐야함통합한 상태에서 컨트롤러 테스트E2E(End to End)로 테스트뷰가 생성한 응답 데이터(HTML)의 유효성을 검증할 수 있다는 장점단점애플리케이션이나 데이터베이스를 반드시 기동트랜잭션이 커밋되기 떄문에 테스트를..

Spring/MVC 2018.08.22

학습 // Spring // JDBC // Test

업데이트 :: 2018.08.22 데이터베이스 테스트테스트 데이터소스 설정테스트 데이터 적재테스트 트랜잭션 제어테스트 데이터 검증데이터베이스 테스트테스트 데이터소스 설정테스트 데이터 적재테스트 케이스용 트랜잭션 제어데이터 검증테스트 데이터소스 설정일반적인 웹 애플리케이션에서는 애플리케이션 서버에서 관리하는 데이터 소스를 JNDI를 통해 가져옴JNDI : 디렉터리 서비스에서 제공하는 데이터 및 객체를 발견하고 참고하기 위한 자바 API다.JUnit을 실행할때 그대로 이용시에 오류 발생일반적으로 사용하는 데이터소의@Bean public DataSource dataSource() throws NamingException { JndiTemplate jndiTemplate = new JndiTemplate(); ..

Spring/JDBC 2018.08.22

학습 // Spring // DI // Test

업데이트 :: 2018.08.22 스프링 테스트DI 컨테이너와 빈의 테스트빈의 단위 테스트의존컴포넌트의 모의화DI 컨테이너에서의 빈의 통합테스트스프링 TestContext 프레임워크DI 컨테이너 설정DI 컨테이너의 라이프사이클 제어프로파일 지정테스트용 프로퍼티 값 지정스프링 테스트기능Junit, TestNG 라는 테스팅 프레임워크 사용해서 스프링의 DI 컨테이너 동작트랜젹션을 테스트 상황에 맞게 제어애플리케이션 서버를 사용치 않고 스프링 MVC 동작을 재현테스트 데이터를 적재하기 위해 SQL을 실행RestTemplate을 이용해서 HTTP 요청에 대한 임의의 응답을 보내는 기능DI 컨테이너와 빈의 테스트다음과 같은 애너테이션을 테스트 하는 모듈@Controller@Service@Repository@Com..

Spring/DI & AOP 2018.08.22