7.4 ~ 7.8
5일 간의 첫번째과제, payhere 기업과제가 끝났다.
나는 가계부의 crud를 구현하고, 그에 대한 테스트코드를 작성했다.
브랜치를 사용하여 협업을 하는 것에 익숙해졌다.
첫번째 문제 : Docker 환경에서의 개발
협업을 함에 있어 각자의 로컬환경이 다르다보니 도커로 개발환경을 만들어 작업을 진행하는게 좋다는 의견이 나와 모델링과 함께 개발환경도 같이 세팅했다.
그리고 docker-compose 파일에 웹서버와 db를 만들어 동시에 컨테이너를 실행시키는 방식으로 진행을 하였는데, 웹서버를 실행시키는 명령어를 잘못 입력한 부분에서 계속 막혔었다. (web bash를 사용하겠다는 명령어를 입력한 다음에 서버를 실행시켜야했다)
이렇게 초반에 개발환경 세팅 때 시간이 꽤 지체됐었던 것은 docker에 익숙지 않아서였다고 생각한다.
그리고 마지막으로 도커가 무거워서 내 노트북이 굉장히 느려졌다.
테스트하는 데도 시간이 오래걸렸다. 빨리 새 노트북을 사고 싶다..
두번째 문제 : 삭제했던 것을 복구하는 기능
삭제한 내역은 언제든지 다시 복구 할 수 있어야 한다는 것이 과제의 요구사항 중 하나였다. 이를 함수로 정의하여 delete_flag를 기준으로 toggle형식으로 삭제/복구할 수 있도록 구현하였는데(다른 팀원이 의견을 내신 후 utills.py에 작성하셨다.) 이.. 함수가 적용되는 것을 이해하는 데에 오래걸렸다.
세번째 문제 : 테스트 코드
가계부 crud를 테스트하는 코드를 작성하던 중에
로그인을 한 사용자, 즉 이 프로젝트에서는 token이 발급된 사용자만이 crud를 할 수있다고 생각해서 토큰이 발급되는 부분까지 테스트코드를 짰다.
근데 이렇게 테스트 코드를 짜면 unit test가 아니라 integration test가 되어버린다.
나중에 도커에서 작업하는 환경을 직접 세팅하여 개발해보고 싶다.
다른 팀원이 작성한 카테고리 view를 분석해야겠다.