[python] doctest를 사용하여 프로세스 종료 상태를 테스트하는 방법은?
프로세스 종료 상태를 테스트하는 방법에 대한 예제를 작성해 보겠습니다. 아래는 sys.exit()
함수를 사용하여 프로세스를 종료하는 간단한 함수입니다.
import sys
def divide(a, b):
"""
두 수를 나누는 함수
>>> divide(10, 2)
5.0
>>> divide(7, 0)
Traceback (most recent call last):
...
ZeroDivisionError: division by zero
"""
if b == 0:
sys.exit(1)
return a / b
if __name__ == "__main__":
import doctest
doctest.testmod()
위 예제에서 doctest
모듈을 임포트하고 doctest.testmod()
를 호출함으로써 테스트를 실행할 수 있습니다.
첫 번째 예제는 10을 2로 나누는 경우 5.0을 반환해야 함을 보여줍니다. 두 번째 예제는 0으로 나누려고 할 때 ZeroDivisionError
가 발생하여 프로세스가 종료되는지 테스트합니다.
위 예제를 실행하면 doctest
가 테스트를 수행하고 결과를 표시합니다. 예상된 값과 실제 반환된 값을 비교하여 테스트를 수행하고 에러가 발생하면 해당 에러를 표시합니다.
이처럼 doctest
를 사용하여 프로세스 종료 상태를 테스트할 수 있습니다. 프로세스 종료 상태에 따라 다른 결과를 얻으려는 경우, 이를 테스트 케이스로 작성하여 doctest
를 활용할 수 있습니다.