[python] doctest를 사용하여 단위 테스트를 작성하는 방법은?
doctest
는 파이썬 내장 모듈 중 하나로, 코드와 함께 작성된 독스트링(docstring)에 있는 예제를 실행하고 결과를 검증하는 기능을 제공합니다. 이를 통해 코드의 예시 사용법과 동작을 문서화하고, 동시에 단위 테스트로 활용할 수 있습니다.
doctest
를 사용하여 단위 테스트를 작성하는 방법은 다음과 같습니다:
- 테스트하고자 하는 함수나 클래스의 독스트링에 예제와 결과를 작성합니다. 독스트링은 함수나 클래스 정의 바로 아래에 따옴표 세 개(
"""
)로 감싸서 작성합니다.
def add(a, b):
"""
주어진 두 수를 더하는 함수입니다.
>>> add(2, 3)
5
>>> add(5, -2)
3
"""
return a + b
doctest
모듈을 임포트하고,doctest.testmod()
함수를 사용하여 테스트를 실행합니다.
import doctest
if __name__ == '__main__':
doctest.testmod()
- 테스트를 실행하고 결과를 확인합니다.
doctest
는 독스트링 내의 예제를 실행하고 실행 결과를 검증합니다. 모든 테스트가 통과되면 아무런 출력이 없지만, 테스트에서 오류가 발생하면 오류 메시지가 출력됩니다.
doctest
를 사용하여 작성된 예제는 테스트와 문서화를 동시에 수행할 수 있어 매우 유용합니다. 코드에 변경사항이 있을 때마다 예제에 대한 검증을 자동으로 수행하여 코드의 정확성을 보장하고, 더 나아가 다른 개발자들에게 코드의 사용법을 자세히 알려줄 수 있습니다.
자세한 내용은 Python 공식 문서의 doctest 모듈 문서를 참고하시기 바랍니다.