티스토리 뷰

파이썬의 unittest 단위 테스트 프레임워크에서 자주 사용하는 assert 메서드에 대해서 알아보자.

 

 

 

# 값 검사 메서드

TestCase 클래스는 값을 검사하고 실패를 보고하기 위해 assert 메서드를 제공한다. 모든 assert 메서드는 msg 인자를 추가로 받기 때문에 실패 시 출력 메시지를 전달할 수 있다. 

메서드 검사하는 내용 추가된 버전
assertEqual(a, b) a == b  
assertNotEqual(a, b) a != b  
assertTrue(x) x is True  
assertFalse(x) x is False  
assertIs(a, b) a is b 3.1
assertIsNot(a, b) a is not b 3.1
assertIsNone(x) x is None 3.1
assertIsNotNone(x) x is not None 3.1
assertIn(a, b) a in b 3.1
assertNotIn(a, b) a not in b 3.1
assertIsInstance(a, b) isinstance(a, b) 3.2
assertNotIsInstance(a, b) not isinstance(a, b) 3.2

 

 

 

# 예외, 경고, 로그 메시지 발생 검사 메서드

메서드 검사하는 내용 추가된 버전
assertRaises(exc, fun, *args, **kwds) fun(*args, **kwds)가 exc를 발생  
assertRaisesRegex(exc, r, fun, *args, **kwds) fun(*args, **kwds)가 exc를 발생하고 메시지가 정규식 r에 일치 3.1
assertWarns(warn, fun, *args, **kwds) fun(*args, **kwds)가 warn을 발생 3.2
assertWarnsRegex(warn, r, fun, *args, **kwds) fun(*args, **kwds)가 warn을 발생하고 메시지가 정규식 r에 일치 3.2
asserLogs(logger, level) with 블록이 최소 level로 logger에 로그를 남김 3.4
assertNoLogs(logger, level) with 블록이 최소 level로 logger에 로그를 남기지 않는다. 3.10
댓글
공지사항