목록우아한테크코스 (4)
도도한 개발자
본 게시물은 우아한테크코스 미션을 하면서 작성한 글입니다. 🐈⬛ @RequestMapping을 사용하면서... MVC 미션 코드리뷰 하면서 헷갈리는 개념을 발견했습니다. HandlerKey를 만들 때 생성자에 RequestMapping 어노테이션의 value와 http method를 인자로 넘겨줘야 하는데 이때 value는 요청이 처리되는 url 경로입니다. public static List keysByAnnotation(RequestMapping annotation) { List handlerKeys = new ArrayList(); String value = annotation.value(); // 여기 RequestMethod[] requestMethods = annotation.method();..
🐈⬛ 무슨일이야? 우아한테크코스 레벨4에 접어들면서 레벨3때 진행했던 프로젝트 리팩터링이 시작됐습니다. 저희 팀은 제일 먼저 조회 기능을 Querydsl로 변경하는 작업을 첫 번째로 삼았습니다. 그래서 어제부터 시작했고 문제는 테스트 코드를 작성하면서 일어났습니다. @Test void 리뷰_13개_중_첫번째_페이지엔_10개의_리뷰가_있다() { // given for (Review review : 리뷰_13개(member)) { reviewRepository.save(review); } // 생략 // when Page allReviews = reviewQueryRepository.findAllReviews(station.getStationId(), pageable); ReviewResponse exp..
🐈⬛ 레벨 인터뷰 우아한테크코스에선 레벨이 끝날 시점에 레벨 인터뷰를 진행한다. 코치 한 분과 여러명(약7-8명)의 크루들과 함께 서로를 인터뷰 하는 방식이다. 레벨3의 방학이 끝난 시점인 어제 오늘이었는데 이번엔 코치 없이 크루들과 자율적으로 레벨 인터뷰를 진행했다. 노션에만 정리하는 것보단 이렇게 하면 긴장하고 열심히 공부하지 않을까 여기에 박제해놓는다. 🐈⬛ 레벨로그 학습 JWT 적용 filter & argumentResolver created_at, updated_at 컬럼 추가 Date vs LocalDate, LocalDateTime JPA Pagination을 활용한 무한 스크롤 기능 구현 Github Actions와 Docker를 활용한 CI/CD 구축 Actuator, Promethe..
🐾 배경 설명 @Test void 인증된_멤버일_경우_정상_응답한다() { //given 댓글을_등록한다(요청, 토큰, 충전소); // when var patch응답 = 댓글을_수정한다(수정_요청_1개, 토큰, 리뷰); var 해당_댓글 = 해당_댓글을_가져온다(); // then SoftAssertions.assertSoftly(softly -> { 상태_코드를_검증한다(patch응답, NO_CONTENT); 값이_같은지_비교한다(해당_댓글.ratings(), 수정_요청_1개.ratings()); 값이_같은지_비교한다(해당_댓글.content(), 수정_요청_1개.content()); }); } 댓글 수정이 정상적으로 동작하는지 검증하는 테스트코드입니다. 먼저 댓글을 등록하고, 수정을 한 후 해당 댓글..