티스토리 뷰
반응형
파이썬 unittest 단위 테스트 프레임 워크는 기존에 작성했던 테스트 함수를 수정하지 않고 unittest로 실행할 수 있도록 지원한다.
# 테스트 함수 예제
만일 unittest를 사용하기 전에 다음과 같은 테스트 함수를 만들었다고 가정해 보자.
def testSomething():
something = makeSomething()
assert something.name is not None
# ...
# 테스트 함수를 unittest에 추가하기
테스트 함수를 unittest에 추가하려면 unittest의 FunctionTestCase를 사용하면 된다.
import unittest
def testSomething():
name = 1
# ...
assert name is not None
if __name__ == "__main__":
testcase = unittest.FunctionTestCase(testSomething)
unittest.main()
# 테스트 함수에 setUp과 tearDown 설정하기
FunctionTestCase는 추가로 setUp과 tearDown을 함께 설정할 수도 있다.
testcase = unittest.FunctionTestCase(
testSomething,
setUp=makeSomethingDB,
tearDown=deleteSomethingDB
)
# 하지만...
하지만 unittest 공식문서에는 기존 테스트 함수를 FunctionTestCase를 사용해서 실행할 수는 있지만, 이 방법을 추천하지 않는다고 한다. 시간을 들여서 적절한 테스트 케이스로 만드는 것이 미래에 있을 리팩토링을 대단히 쉽게 만들어 준다고 한다. 그리고 테스트 함수에서 사용된 assert는 unittest에서는 정확한 테스트 내용을 확인할 수 없고, 단지 예외가 발생하는지만 확인할 뿐이다.
반응형
'Python > unittest' 카테고리의 다른 글
파이썬 unittest - 테스트 로더 클래스 (0) | 2023.02.18 |
---|---|
파이썬 unittest - 테스트 건너뛰기 (0) | 2023.02.18 |
파이썬 unittest - 테스트 스위트(test suite) (0) | 2023.02.18 |
파이썬 unittest - 테스트 케이스와 텍스트 픽스처 (0) | 2023.02.18 |
파이썬 unittest - unittest란 무엇인가? 중요한 개념 그리고 실행방법 (0) | 2023.02.18 |
댓글
공지사항