일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- secondaryindex
- partiql
- filterexpression
- AWS
- Java
- IdClass
- 로드밸런서
- 오류
- markerinterface
- 스프링테스트
- Spring
- MockMvc
- 개발
- Route53
- EmbeddedId
- query
- javaspring
- 다이나모디비
- awscli
- 도메인
- testresttemplate
- DynamoDB
- Springsecurity
- 자바스프링
- 스프링
- compositekey
- 자바
- annotation
- 테스트코드
- awscloud
- Today
- Total
목록testresttemplate (2)
아장아장 개발 일기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/AtHlb/btrWopvpuS3/dk0LIGfgUiu0jk9DRkY660/img.png)
https://api.odcloud.kr/api/nts-businessman/v1/status 위의 주소를 호출하면 특정 사업자등록번호의 상태값이 리턴된다. 그런데 막상 호출하면 계속 DATA_MALFORMED 혹은 BAD_JSON 오류가 발생했다. (RestTemplate 사용) 테스트 소스를 작성해 호출해 testRestTemplate으로 호출해보았는데, 잘된다 …?! 흠 … 🤔 왠지 RestTemplate과 testRestTemplate간의 차이를 확인하면 오류의 원인을 찾을 수 있을 것 같아, testRestTemplate의 document를 읽던중…! TestRestTemplate의 경우 Basic authentication headers를 선택적으로 가질 수 있다고 나와있는데에서 힌트를 얻었다..
mvc 구조로 이뤄진 프로젝트의 경우 mockMvc 템플릿을 사용해 테스트를 진행할 수 있습니다. mockMvc를 사용하기 전에 TestRestTemplate을 사용해 테스트를 시도했는데 spring security config때문에 로그인 페이지에서 302 에러가 표시되었습니다. 정확히 스프링 시큐리티의 httpSecurity configure의 loginform과 antMatcher로 권한 필터링하는 소스가 테스트하려는 소스로의 진입을 막는 것으로 파악했습니다. 이는 mockMvc 템플릿의 @WithMockUser, @WithUserDetails등의 어노테이션을 사용해 해결될 수 있습니다. 그렇다면 여기서 ‘TestRestTemplate을 @WithMockUser 혹은 @WithUserDetails와..