[python] doctest를 사용하여 파이썬 패키지의 예제 코드를 테스트하는 방법은?

doctest는 파이썬의 테스트 도구 중 하나로, 함수나 모듈의 docstring에 포함된 예제 코드를 실행하고 결과를 확인하여 테스트를 수행하는 방법입니다. 이를 활용하면 예제 코드가 항상 실행 가능하고 올바른 결과를 반환하는지 확인할 수 있습니다.

파이썬 패키지의 예제 코드를 테스트하기 위해 doctest를 사용하는 방법은 다음과 같습니다:

  1. 패키지의 함수나 클래스의 docstring에 실행 가능한 예제 코드를 작성합니다. 예제 코드는 인풋과 예상되는 아웃풋에 대한 주석으로 구성됩니다.

  2. 다음과 같이 doctest 모듈을 임포트하고, 테스트를 실행할 모듈 또는 패키지의 이름을 전달하여 테스트를 수행합니다.

import doctest
import mypackage   # 테스트를 수행할 모듈 또는 패키지의 이름

if __name__ == "__main__":
    doctest.testmod(mypackage)
  1. 테스트를 실행하면 doctest가 해당 모듈 또는 패키지의 docstring에 포함된 예제 코드를 실행하고 결과를 확인합니다. 만약 예상되는 결과와 실제 결과가 일치하지 않는다면, 테스트는 실패로 표시됩니다.

예제 코드를 최신 상태로 유지하고 패키지의 동작을 검증하기 위해 주기적으로 doctest를 실행하는 것이 좋습니다. 이는 패키지의 사용자들에게 신뢰할 수 있는 예제 코드를 제공하고, 버그를 미연에 방지하는 데 도움이 됩니다.

더 자세한 내용은 Python 공식 문서 - doctest를 참고해주세요.