[python] doctest를 사용하여 파일 입출력을 테스트하는 방법은?
파이썬의 doctest는 모듈의 docstring에 포함된 예제를 추출하여 테스트 케이스로 실행하는 기능을 제공합니다. 이를 활용하여 파일 입출력을 테스트할 수 있습니다. 다음은 doctest를 사용하여 파일 입출력을 테스트하는 방법을 보여줍니다.
- 테스트하고자 하는 함수에 대한 docstring에 테스트 케이스를 작성합니다. 이때 파일의 경로와 이름을 입력으로 받아 파일을 읽고 쓰는 함수에 대한 예제를 작성합니다.
def read_file(file_path: str) -> str:
"""
파일을 읽어서 내용을 문자열로 반환합니다.
예제:
>>> read_file("example.txt")
'This is an example file.'
Args:
file_path (str): 파일의 경로와 이름
Returns:
str: 파일의 내용
"""
with open(file_path, 'r') as file:
content = file.read()
return content
- 테스트를 실행합니다. 다음의 코드를 실행하여 doctest가 실행되도록 합니다.
import doctest
if __name__ == "__main__":
doctest.testmod()
위의 예제에서는 “example.txt”라는 파일을 읽는 함수를 테스트하고 있습니다. doctest를 실행하면 함수의 docstring에 작성된 테스트 케이스가 실행되고, 예제와 반환 값이 일치하는지 확인됩니다.
이렇게 하면 doctest를 활용하여 파일 입출력 함수를 테스트할 수 있습니다. doctest는 간편하게 작성하고 실행할 수 있기 때문에 효율적인 테스트를 진행하는데 도움이 됩니다.
참고 문서: