2차 프로젝트 숨고(Soomgo)

박상영·2020년 8월 22일
0

일반회원과 숨은고수(전문가)들 다수를 연결해주는 플랫폼인 숨고사이트 를 클론한 프로젝트 입니다.

개발기간 : 2020.07.6 ~ 2020.07.17(약 2주)

Modeling with Aquerytool

실제 서비스를 해야되는 모델링과 클론할때 필요한 정보를 넣고 만들 모델링이 서로 너무나 다르게 느껴졌다. 이번 모델링 또한 마지막까지 수정과 수정을 거쳐 완성되었다.
하지만 기간도 짧으며 할수있는 한계가 보여 팀원들과 상의 후 많은것을 생략할수밖에 없는것이 너무 아쉬웠다.

Kakao API

1차 프로젝트를 진행할때 사용하지 않았던 외부 API 를 연동하는 작업을 했는데, 정말 새로워서 재미있었다. 프론트엔드와 같이 서로 연결하는 부분이있었는데, 혼자 html에 버튼과 url를 주어 직접 어떠한 과정을 통해 들어오는지 이해한 다음 작업을 하니까 좀더 수월하게 했던것 같다. 어려웠던 점은 처음 사용하는 방법이다보니 좀더 이해하는것에 중점을 두고 코드를 작성했다.
Kakao의 user_info를 받아오는 함수를 따로 만들어 가독성이 좋고 pythonic 한 코드를 작성하려 노력했다.

Unittest

유닛테스트를 진행할때도 외부 api를 사용한것을 테스트 할때의 방법이 달라서 애를먹었다.
unittest는 단순히 views.py 내의 함수만 테스트 하는것이기 때문에 requests를 사용하여 Kakao에 보내지 않는다. 그렇기 때문에 이 requests를 보내는 행위를 patching하여 mockdata를 return 하게 해주고 test를 진행하였다.

patch 데코레이터를 사용하여 _get_kakao_user_info함수를 patching하게 만들고, mock의 return value를 설정해주어 실제 kakao에서 보내주는 데이터를 json형식을 만들어 테스트해주었다.

좋은점과 아쉬운점

새로운 api활용법과 중요한 유닛테스트를 처음 진행하게되어 재미있었고, 스스로 공부하며 많은 방법을 활용하며 알아가면서 좀더 이해하기 쉬웠다.
아쉬운점은 시간이 많이 있었다면 다른 api를 활용하여 더 다양한 방법을 시도해볼수도 있었을 것이고, 팀원들이 unittest를 진행하는데에 어려움을 느껴 서로 더 도와가며 할수있었을텐데 시간이 많이 없어서 아쉬웠다.

profile
backend

0개의 댓글