호기심을 코드로 실험해보는게 중요한 이유, 실험실 카테고리 오픈!
·
개발 공부 일기장/실험실
개요저의 맥북 dev 폴더 구석에는 Java_Sandbox 라는 작은 프로젝트가 있다, 처음 개발을 시작하던 시절부터 쭉 그 자리에 있었다.처음 이 프로젝트를 만든 날이 기억난다, 정말 개발을 입문하던 시점이여서 전위연산자와 후위연산자의 작동을 눈으로 확인해보고 싶었다. 그 당시에는 AI가 없었기 때문에 실제 동작에 대한 신뢰는 직접 해야지만 알 수 있었다. (여전히 AI의 말을 100% 신뢰하진 못한다) AI를 잘 활용하고 있는 지금도 여전히 공부를 하면서 String constant pool 작동, Wrapper 클래스의 캐싱, volatile 작동, Reflection API 테스트 등 여러가지 코드를 작성하면서 논다. 직접 코드를 짜고 궁금한 부분을 눈으로 확인하고 새로운 인사이트를 알아내는게 재..
SpringBoot Test, 숫자로 테스트 메소드 실행 순서 정하기
·
개발 공부 일기장/Java Develop
오늘은 테스트 코드를 작성하던 도중 메소드들의 실행순서가 보장되지 않아서 문제가 되었었고 어떻게 해결했는지 공유하기 위해서 글을 작성한다. 내 경우에는 회원가입 테스트를 진행하고, 로그인 테스트를 진행한 뒤 계정을 삭제하는 테스트 플로우를 세웠는데, 이게 회원가입도 하기 전에 로그인 시도를 해버려서 오류가 났다. 그래서 스프링부트 테스트 코드의 메소드별 실행 순서를 보장해주는 방법을 몇가지 찾았는데, 내가 선택했던 가장 직관적이였던 방법을 공유하겠다. @TestMethodOrder(MethodOrderer.OrderAnnotation.class) 사용 방법은 아주 간단하다. 아래 예제코드처럼 테스트 클래스 위에 이 어노테이션을 추가해주면 된다. @RunWith(SpringRunner.class) @Spr..
SpringBoot Junit을 이용한 RestAPI 테스트 코드 작성
·
개발 공부 일기장/Java Develop
개요 항상 그렇듯 본문에 들어가기전에 왜 테스트 코드 작성에 대한 글을 작성하는지 간략하게 설명하겠다. 2년차로 접어들고 있는 내 개발 경력에서 테스트 코드라는것을 한번도 작성해본적이 없었다. 하지만 여기저기 블로그를 보고 많은 개발을 접하며 테스트 코드의 중요성은 자연스레 알고 있었다. 그래서 이번에 개인적으로 진행하는 사이드 프로젝트의 백엔드에 테스트 코드를 작성해보면 좋을것 같았다. 테스트 해야 하는 RestAPI 이 글에서 예제로 쓸 RestAPI는 바로 회원가입 하는 API를 예제로 사용할것이다. 대부분 Json을 주고 받는 RestAPI 특성상 어떤 API에도 응용 가능하니 신중하게 보면 좋을듯하다. 예를 들어 /user/join으로 요청하는 API가 있다. 이 API를 요청할때에는 다음과 같..