import unittest
클래스 생성 시 unittest.TestCase 상속받아 클래스 정의
#-*- coding:ms949 -*-
import unittest
class MyMath:
@staticmethod
def mySum(n):
nSum = 0
for n in range(1,n+1):
nSum += n
return nSum
@staticmethod
def hap(a,b):
return a+b
class MyMathUnitTest(unittest.TestCase):
def setUp(self): #unit test 시작 시 호출됨
print("start unit Test")
def tearDown(self): #unit test 종료 시 호출됨
print("end unit Test")
def test01(self): #test case 함수는 항상 test 로 시작해야 한다
rst = MyMath.mySum(10)
self.assertEqual(rst, 55, "Math.mySum Test...")
def test02(self):
rst = MyMath.hap(10, 20)
self.assertEqual(30, rst, "Math.hap Test...")
if __name__ == '__main__':
# unittest.TestCase 상속받은 모든 unit test 시작
unittest.main()
# 특정 class의 unit test만 수행하고 싶을 때
suit = unittest.TestLoader().loadTestsFromTestCase(MyMathUnitTest)
unittest.TextTestRunner(verbosity=3).run(suit) #verbosity 는 얼마나 상세하게 알려줄 것인지 level 정함
# 특정 class의 특정 test case만 수행하고 싶을 때
suit = unittest.TestSuite()
suit.addTest(MyMathUnitTest("test02"))
unittest.TextTestRunner(verbosity=2).run(suit)
'교육 > Python 0309-0313' 카테고리의 다른 글
11. 업무자동화 관련 module (0) | 2019.11.20 |
---|---|
09. 문자열 (0) | 2015.03.12 |
08. Library (0) | 2015.03.12 |
07. File IO (0) | 2015.03.11 |
06. 예외처리 (0) | 2015.03.11 |