유닛 테스트란 ?
내가 작성한 코드의 가장 작은 단위인 함수를 테스트하는 메소드 입니다.
시스템을 테스트 하는 3가지 방법
1. UI Testing / End-To-End Testing
- 눈으로 직접 내가 만든 프로그램에 들어가서 하나씩 눌러가며 태스트 하는 방법이다.
- 보통 시나리오를 작성해서 테스트를 한다.
2. Integration
- 최초 두개이상의 클래스 또는 서브 스스템의 결합을 테스트하는 방법
- 우리가 Postman 또는 httpie로 호출해서 Json response가 제대로 가는지 출력 해보는 테스트
3. Unit Test
- 함수 단위를 테스트 하는 방법입니다.
Unit Test의 장점
1. 사람이 하는게아니기 때문에 속도가 다른 것들과는 비교도 안되게 빠르다.
2. 코드를 수정하여 버그가 났다면 어디서 났는지 알기가 쉽다. 즉 유지보수가 편하다.
Python Unit Test 용어
TestCase : unittest 프레임 워크의 테스트 조직의 기본 단위
Fixture: 테스트를 진행할때 필요한 테스트용 데이터 혹은 설정 등을 이야기 한다
assertion: unittest에서 테스트 하는 부분이 제대로 됬는지 확인하는 부분
Unit Test 개발 가이드(python)
1. 모듈 import pytest or unittest
import unittest
# mycalc.py
def 곱하기(a, b):
return a*b
def 제곱(a):
return a**2
# tests.py
import unittest
import mycalc
class MyCalcTest(unittest.TestCase):
def test_곱하기(self):
c = mycalc.add(20, 10)
self.assertEqual(c, 200)
def test_제곱(self):
c = mycalc.제곱(2)
self.assertEqual(c, 4)
if __name__ == '__main__':
unittest.main()
python -m test -v
다음 포스팅에는 Django의 Unittest를 진행 하도록 하겠습니다.
'Python' 카테고리의 다른 글
[Python] Bcrypt and Jwt (0) | 2020.07.14 |
---|---|
[Python] 자료구조 Set, Dictionary (0) | 2020.07.13 |
[Python] 자료구조 Tuple,Array (0) | 2020.07.06 |
[Python] 크롤링-starbucks 음류수 종류 - csv (0) | 2020.07.03 |
[Python] 크롤링-billboard 차트 - csv (0) | 2020.07.02 |
댓글