pytest
20. miniter API Unit test 2
● ping 엔드포인트 테스트 코드 작성 def test_ping(api): # 1 resp = api.get('/ping') # 2 assert b'pong' in resp.data # 3 # 1. ping 엔드포인트를 테스트하는 함수, 여기서 api는 위의 코드인 def api 함수의 리턴값인 test clinet를 자동으로 적용시켜준다. # 2. test clinet의 get 메소드를 통해서 가상의 GET 요청을 /ping URL 와 연결되어있는 엔드포인트에 보낸다. # 3. 위의 2를 실행 후 리턴받은 응답의 body에 "pong" 이라는 텍스트가 포함되어 있는지 확인한다. "pong" 앞에 붙어있는 b 는 해당 스트링을 byte로 변환시켜 주는 역할을 한다. resp.data가 스트링이 아닌 b..
18. 단위 테스트 (Unit test) 와 여러 테스트들
테스트를 하는것은 중요하지만 그보다 더 중요한 것은 테스트를 자동화 시키는 것이다. 사람이 직접 테스트 하는 것을 메뉴얼 테스트 (manual test) 라 하는데 직접 일일이 하는 것이므로 테스트 속도와 시간이 오래 걸린다는 것이 문제다. 그렇기 때문에 인력과 시간이 부족한 현장에서는 테스트 자동화가 중요하다는 것이다. 이 책에서는 3가지 테스트 방법을 소개한다. UI test / End-To-End test UI를 통해서 하는 테스트 ,프론트엔드 부터 백엔드 까지 실행시키고 연결해야 하는 테스트 이기 때문에 오래걸리며 완벽하게 자동화 하기 까다롭다. 이 책의 저자는 10% 정도는 UI test 를 할 것을 권장한다. Intergration test 지금까지 해 왔던 것이 바로 이 테스트이다. 기능을 ..