개발을 하는 과정에서 코드를 간결하고 깔끔하게 작성하는 것 만큼 중요한 작업이 하나 있다.
바로 내가 작성한 코드를 테스트하는 것이다. 실제 개발 환경에서는 계속해서 코드가 수정되고
이에 따라 예상 값과 실제 값이 다르게 나올 수 있기 때문에 테스트하는 습관을 들이는 것이 좋다.
그저 단순히 print해서 결과 값을 확인한다면 간편하긴 하지만 그 경우가 많아질 경우 시간이 많이 걸릴 것이다.
이때 이러한 과정을 하나의 클래스를 통해 True/False를 알 수 있다면 훨씬 편할 것이다.
여러 테스트 케이스를 작성함으로써 코드를 테스트하는 과정을 유닛 테스트(Unit Test)라고 한다.
import unittest
def double(a):
return a * 2
class TestDouble(unittest.TestCase):
# 기대값이 실제값과 일치한가?
# expected == actual
def test_if_double_positive(self):
self.assertEqual(double(2), 4)
self.assertEqual(double(1), 2)
def test_if_zero_double(self):
self.assertEqual(double(0), 0)
def test_if_double_negative(self):
self.assertEqual(double(-2), -4)
※ unittest는 파이썬에 내장되어 있는 모듈로, test에 쓰이는 클래스와 메서드의 이름은 고정되어 있지 않다.
다만, 어떠한 경우를 테스트하는 것인지에 대해 명시하는 정도로 작성하면 좋다.
- 코드를 Run 한 후에 unittest.main()이라는 명령어를 입력한다.


TDD(Test Driven Development)를 사용한다면?
-> 테스트 코드를 먼저 작성한 후, 그에 맞게 코드를 작성(개발)하는 방법


'Python > 패스트캠퍼스(테크보이 워니)' 카테고리의 다른 글
JSON 과 XML (0) | 2022.04.10 |
---|---|
파이썬 API - 부동산 실거래 (0) | 2022.04.10 |
파이썬 API 사용 (0) | 2022.04.10 |
파이썬 모듈/패키지 (0) | 2022.04.07 |
파이썬 상속(클래스, 오브젝트) (0) | 2022.04.04 |