[python] 예외 처리를 위한 테스트 작성 방법
Python에서 예외 처리는 코드 안정성을 높이고 예기치 않은 오류를 처리하는 데 도움이 됩니다. 이 포스트에서는 Python에서 예외 처리를 테스트하는 방법에 대해 알아보겠습니다.
1. unittest
모듈을 사용한 테스트 작성
Python의 표준 라이브러리에 포함된 unittest
모듈을 사용하여 예외 처리를 테스트할 수 있습니다. 다음은 unittest
모듈을 사용하여 특정 예외가 발생하는지 테스트하는 예제 코드입니다.
import unittest
def divide(x, y):
if y == 0:
raise ZeroDivisionError("Cannot divide by zero")
return x / y
class TestDivision(unittest.TestCase):
def test_divide_by_zero(self):
with self.assertRaises(ZeroDivisionError):
divide(5, 0)
if __name__ == '__main__':
unittest.main()
위의 코드에서 unittest.TestCase
를 상속받는 테스트 클래스를 작성하고, with self.assertRaises(ZeroDivisionError)
를 사용하여 특정 예외가 발생하는지 확인할 수 있습니다.
2. pytest
라이브러리를 사용한 테스트 작성
pytest
는 Python에서 인기 있는 테스트 프레임워크 중 하나이며, 예외 처리를 테스트하는 데 많이 사용됩니다. 다음은 pytest
를 사용하여 예외가 발생하는지 테스트하는 예제 코드입니다.
def divide(x, y):
if y == 0:
raise ZeroDivisionError("Cannot divide by zero")
return x / y
def test_divide_by_zero():
with pytest.raises(ZeroDivisionError):
divide(5, 0)
위의 코드에서 pytest.raises
를 사용하여 예외가 발생하는지 확인할 수 있습니다.
결론
Python에서 예외 처리를 테스트하는 방법에 대해 알아보았습니다. unittest
모듈이나 pytest
라이브러리를 사용하여 예외 처리를 테스트할 수 있으며, 코드 안정성을 높이고 예기치 않은 오류를 처리하는 데 도움이 됩니다.
참고문헌:
- https://docs.python.org/3/library/unittest.html
- https://docs.pytest.org/en/stable/index.html