일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준
- jpa
- springdatajpa
- Spring Boot
- 알고리즘
- 스프링
- Proxy
- Greedy
- db
- JDBC
- Exception
- http
- Thymeleaf
- kotlin
- 스프링 핵심 원리
- 김영한
- 인프런
- QueryDSL
- transaction
- 자바
- 스프링 핵심 기능
- SpringBoot
- spring
- 그리디
- java
- Android
- Servlet
- JPQL
- pointcut
- AOP
- Today
- Total
목록@SpringBootTest (4)
개발자되기 프로젝트
1. 문제 현상 현재 api결과를 view로 넘겨주고, view에서 조회할 때 에러가 발생한다. result - pathLIst - path - SubPathList - subPath 의 구조로 이루어져있는데, th:each를 통해 pathList에서 path를 반복해서 꺼내고, 각 path에서 th:each를 통해 subPathList에서 subPath를 꺼낸 뒤 값을 조회한다. 이때 에러가 발생하는 부분은 subpath의 필드값을 조회하는 부분이다. 이 부분에서 nullPointerException이 발생. 소요시간(분) 이동거리(미터) 도보 이동거리 버스탑승 버스하차 지하철 승차 지하철 하차 디버깅을 해보면 model에 subPath의 값들을 정상적으로 들어가있다. 2. Test Code 일단 mo..
현재 Controller Test목적은 Mock 환경에서 Controller가 의도대로 응답을 하는지 확인하는 것이다. 앞선 글에서는 Controller를 test하기 위해 아래 두 annotation을 사용했다. @WebMvcController @AutoConfigureWebMvc 그 상태에서 DB에 접근하는 등 단순한 slice 이상의 테스트를 진행하기는 어려웠다. 본격적인 test에 앞서 Test와 관련된 annotation을 알아보자. 1. Test관련 Annotaion @SpringBootTest : Spring 통합 테스트 @WebMvcTest : @Controller, @RestController 등을 bean으로 등록함. @Service, @Repository는 스캔 안함. @AutoCon..
Spring을 사용,DB 연결까지 모두 테스트를 해보자! 0. @SpringBootTest @SpringBootTest //스프링 테스트 class MemberServiceIntegrationTest { 1. 스프링 빈에서 주입을 받자 기존에 작성한 test는 각 Test실행 전 memberReository를 직접 생성하고 memberService에 직접 주입해 줬다. @BeforeEach public void beforeEach(){ memberRepository = new MemoryMemberRepository(); memberService = new MemberService(memberRepository); } 하지만 현재 memberRepository, memberService는 스프링 빈으로 ..
1. @Transactional Test class에 @Transactional 붙여주면 각 테스트가 종료될 때마다 사용한 데이터를 rollback 시켜줌. 2. JPA metamodel must not be empty! @WebMvcTest는 Spring context 전부를 로딩하는게 아니라 Web Controller 관련된 일부분만 로딩하여 테스트를 함 JPA옵션에서 발생하는 문제임 1) @MockBean 아래 테스트 코드는 JPA가 필요없어서 로딩을 할 수 없는건데, Mock으로 만들어서 해당 오류 피함. @WebMvcTest //sliced test 전체 spring context를 로드하는게 아니라, 일부분만. @MockBean(JpaMetamodelMappingContext.class) cl..