TIL173 폭풍전야 (22.12.10 TIL) 어제 마무리 하지 못했던 백도어 api 재수정 및 E2E 테스트 및 단위 테스트, 백엔드 테스트 최종 수정 완료! 그린라이트를 보니까 기분이 좋아진다~ E2E 테스트를 할 때는 각 테스트마다 리셋 작업을 해주거나 Before 로 한 번에 잡아주어서 테스트의 독립성을 만들어야 한다는 것을 꼭 명심하자!!!! 이제 배포만 남았다. 어제 밤을 새서 하려고 책상에 앉았으나 어느새 책상에 엎드려서 자고 있던 나를 발견하고 그냥 곱게 침대가서 잤다..^^; 다음주 부터는 이제 드디어 나만의 포트폴리오 작업의 시작을 알리는 기획 주간이다. 🐶 같이 달려야 하니까 오늘 하루는 나에게 아주 잠깐의 휴식을 주었다고 생각하기로,,! 내일은 또 기획을 위해 달려야 하기에 마치 폭풍전야 같은 밤 🌙 2022. 12. 10. 레벨 테스트 작업 로그 #Last - 사용자 입장에서 생각하기 (22.12.09 TIL) 드디어 레벨테스트 마지막 날, 어제 새벽까지도 완성하지 못한 마지막 주문 내역 조회 기능까지 오늘 오전에 마무리하고, 오후 시간은 테스트를 통과시키는 데 주력했다. 그리고 저녁 시간에는 완성된 코드에 대한 홀맨님의 피드백 시간이 있었다. 1) E2E 테스트 오후 3시 쯤 단위 테스트는 다 통과했고 마지막 E2E 테스트만 남겨두었는데, 계속 돌릴 때마다 안깨졌던 테스트가 깨진다거나, 깨졌던 테스트가 다시 통과한다거나 하는 등 문제가 계속 터졌다. 알고보니 인수 테스트를 할 때는 각 테스트들은 무조건 독립적으로 동작하도록 해주어야 하는데, 그러기 위해서는 매번 데이터 reset & setup 을 해주어야 한다. 하지만 나는 그 세팅 과정을 테스트에 개별적으로 해주고 있었다. 한 마디로 어떤 테스트는 리셋을 .. 2022. 12. 9. 레벨 테스트 작업 로그 #10 - 중첩 DTO 를 사용할 때 (22.12.08 TIL) 주문 조회 페이지를 구현 중..백엔드 코드는 구현되었고 프론트에서 내가 주문한 상품 목록이 나와야 하는데 아무것도 찍히지 않는 상황이 발생했다. OrderDto 안에서 ProductDto 를 사용한 중첩 DTO 를 구현했는데 아무 생각 없이 getter 를 만든 것이 패인이었다. public class OrderDto { private Long id; private Integer quantity; private Long totalPrice; private String receiver; private String address; private String message; private ProductDto product; private LocalDateTime createdAt; public OrderDto.. 2022. 12. 8. 레벨 테스트 작업 로그 #9 (22.12.07 TIL) 회원가입 백엔드 작업. 최대한 컨트롤러에서는 로직을 보이지 않게 하기위해 서비스를 호출해서 레포지토리를 조회 후 그걸 dto 로 변환해주었다. 조건이 추가되고 규모가 커질수록 서비스 로직이 점점 비대해질 것 같다. //UserController.java @PostMapping @ResponseStatus(HttpStatus.CREATED) public UserCreateDto signup( @Valid @RequestBody UserRegisterDto userRegisterDto ) { User user = createUserService.create(userRegisterDto); return user.toCreateDto(); } //createUserService.java public User c.. 2022. 12. 7. 레벨 테스트 작업 로그 #8 - 테스트 코드 작성, 코딩 시간 늘리기 (22.12.06 TIL) 오늘은 새로고침을 해도 내 계정 정보와 잔액이 날아가지게 하기 위해 백엔드에서 내 계정 정보를 반환하는 api 인 users/me 를 만들었다. 그리고 프론트에서 유효성 검사를 해주었는데 백엔드에서는 어떻게 검사를 해줘야 할까 생각하다가 아샬님이 이런 비슷한 코멘트를 하신 것 같아서 찾아보았다. 유효성 검사를 위해 백엔드에서 api 를 만들어서 실시간으로 검사하게 하고 그것을 ui 로 그려준다. 지금 하고 있는 테스트 코드 오류들을 해결하고 나면 시도해 보아야겠다. 그리고 오늘 트레이너인 홀맨님께서 내려오셔서 간단한 미팅을 진행하시다가 wakatime 으로 수강생들의 코딩 시간을 낱낱이 보여주셨다..^^ 거의 하위권에 위치하고 있는 내 코딩 시간. 고민하는 시간과 구글링 하는 시간이 포함되어 있지는 않아.. 2022. 12. 6. 레벨 테스트 작업 로그 #7 - 모킹에 모킹을 더해서 (22.12.05 TIL) 백엔드는 테스트 오류 메세지는 이제 익숙해졌고, 오류가 나면 '아, 이걸 안해줬네!' 하고 떠올릴 수 있게 되었지만 프론트 테스트는 일단은 오류가 나면 하나씩 모킹해주면서 오류를 하나씩 줄여나가는 식으로 하고 있다. 결국에는 통과되긴 했지만 통과된 최종 코드를 보니까 관련되어 있는 함수나 객체는 다 모킹해준 식이었다. 코드를 짜면서 어디서부터 어디까지 모킹해줘야 하는 지 한 눈에 알면 좋을텐데 이게 모킹을 해주어야 해결되는 오류인지, 코드를 잘못 짠 건지, 오타가 난 건지 헷갈릴 때가 있다. 이미지를 모킹해주고, 관련 객체와 함수를 모킹해주니 테스트가 통과되었다. import { render, screen, waitFor, } from '@testing-library/react'; import Produ.. 2022. 12. 5. 이전 1 ··· 7 8 9 10 11 12 13 ··· 29 다음