[python] doctest를 사용하여 파이썬 패키지의 빌드 및 배포를 테스트하는 방법은?

doctest는 파이썬의 자체 테스팅 모듈 중 하나로, 문서화된 예제 코드를 추출하여 테스트하는 도구입니다. 이를 활용하면 파이썬 패키지의 빌드 및 배포 단계에서 테스트를 자동화할 수 있습니다. 이번 포스트에서는 doctest를 사용하여 파이썬 패키지를 테스트하는 방법에 대해 알아보겠습니다.

먼저, doctest를 사용하기 위해서는 해당 패키지의 문서화된 예제 코드가 필요합니다. 일반적으로 문서화를 위해 주석으로 작성된 코드를 사용합니다. 예를 들어, 다음과 같이 example.py 파일에 문서화된 예제 코드를 작성해봅시다.

# example.py

def add(a, b):
    """
    두 개의 숫자를 더합니다.
    
    >>> add(2, 3)
    5
    >>> add(-10, 5)
    -5
    """
    return a + b

위의 예제 코드에서는 add 함수의 동작을 설명하는 예제를 작성했습니다.

이제, 이 예제 코드를 doctest를 사용하여 테스트해보겠습니다. example.py 파일과 동일한 디렉토리에서 터미널을 열고 다음 명령을 실행합니다.

python -m doctest example.py

위 명령을 실행하면 example.py 파일에 작성된 문서화된 예제 코드가 실행되면서 테스트 결과가 출력됩니다. 만약 모든 예제 코드가 성공적으로 통과되면 출력은 없을 것입니다. 그러나 예제 코드 중 어떤 것이 실패한 경우 해당 테스트 케이스와 실제 결과, 예상 결과가 출력될 것입니다.

이제, 이를 활용하여 파이썬 패키지의 빌드 및 배포를 테스트할 수 있습니다. 패키지의 빌드 스크립트에 위의 명령을 포함시켜주면 빌드 작업 중에 자동으로 테스트가 수행될 것입니다. 또는 CI/CD 도구를 사용하여 자동화된 테스트를 설정할 수도 있습니다.

이와 같이 doctest를 사용하여 파이썬 패키지의 빌드 및 배포를 테스트하는 방법에 대해 알아보았습니다. 문서화된 예제 코드를 작성하고, doctest를 실행하여 테스트 결과를 확인함으로써 패키지의 동작을 검증할 수 있습니다.