본문 바로가기
Django

51일차 TIL

by 승현0604 2022. 11. 14.

오늘 한일 

1. 파이썬 알고리즘 문제 풀기

2. 테스트코드 강의 복습 및 오류해결

 

파이썬 알고리즘을 통해서 복습을 여러개 해봤는데 그중에서 언어에 대한복습을 몇가지 해보았다. 

 

정수 내림차순 배치하기 관련문제인데 sort를 사용을 하여 오름차순으로 배열을 해주고 reverse=True로 설정을 하여 내림차순으로 변환해주는 작업

 

join을 사용해서 ''을 제외하고 나머지를 쪼인해주는 작업 등등 파이썬 언어 몇가지를 복습해볼수 있는 시간을 가졌다. 

 

그리고 오늘 가장 어이없었던문제...

문제에서 보면 1,2,3과 True flase True로 들어가질때 양음수를 구분하고 정의된 모든숫자의 합을 구해주면 되는것인데 True랑 False를 String으로 풀었던 실수를 했따. 알고보니 '불리언배열'을 사용해서 문자열이 아닌 참,거짓 그자체로 푸는문제였다.. 이런어이없는...이것땜에 내 피같은 20분을 날렸다 ㅠㅠ

 

2. 테스트 코드 연습

오늘은 테스트 코드를 통해서 회원가입, 로그인 등 테스트를 해보는걸 배웠다. 

 

임의로 user모델에 내 모델을 정보를 임의로 적어놓고 그것을 참조하는 user_data와 실제 views.py에서 구동하고있는 회원가입 url정보를 담아 post요청을 보내준다. 그렇게 해서 회원가입을 하는순간 나오는 메세지가 "가입완료!!"와 일치를 하면 이제 테스트가 완벽히되었다는 것을 의미하게 된다.

하지만 위에 코드는 잘못된 코드이다 문제가 무엇일까

바로 테스트코드는 독립적으로 돌아가기 때문에 하나의 함수를 건너뛰게된다면 그 임의의 user정보는 사라지게되고 초기화가됩니다 그러면 다음에 진행을 해야할 login에 대한 테스트는 할수 없게 된다고 합니다~

그래서 logintest를 진행하면 user정보가 없기 때문에 당연히 탈락!

그러면 어떻게 해야할까?

 

그래서 다음과 같인 setUp안에다가 임의의 데이터를 만들어주고 그 data를 로그인 url인 토근로그인 views.py에연결을 시켜서 테스트를 해보고 토큰을 잘 가져왓는지 statuscode가 일치하는지 안하는지로 확인을 시켜준다. 

그리고 test_get_user_data에서 토큰을 가지고 로그인을 해주고 로그인이 완료가 되었는지를 테스트를 해주므로써 위에 문제를 해결하였다. 

오늘 테스트 코드에 관련한 체크리스트완료는 다음과 같다 

내일은 게시물관련 테스트코드와 아침퀴즈를 풀고 도커 실무강의를 듣기로결정하였다 .

'Django' 카테고리의 다른 글

53일차 TIL  (0) 2022.11.17
52일차 TIL  (0) 2022.11.15
50일차 TIL  (0) 2022.11.13
47일차 프로젝트 발표 and 시연영상  (0) 2022.11.09
46일차  (0) 2022.11.09