python 单元测试 – unittest
@(python)
单元测试是对程序中的单个子程序、函数、过程进行的测试,面向白盒测试。
单元测试测试覆盖常用子程序的输入组合,边界条件和异常处理,尽可能保证单元测试代码简洁,避免单测本身代码有 bug 影响对测试对象的测试结果。
python 提供单元测试框架 unittest,
简单编写一个模块 calculator.py ,作为单元测试对象
#!/usr/bin/env python
# coding=utf-8
def my_print(str):
pass
#print(str)
class Calculator():
__version__ = 4
def __init__(self, a, b):
my_print("cal init")
self.a = int(a)
self.b = int(b)
def __del__(self):
my_print("cal del")
def add(self):
return self.a + self.b
def sub(self):
return self.a - self.b
def mul(self):
return self.a * self.b
def div(self):
return self.a / self.b
编写测试用例 (test case)
如上, 我们为该模块编写对应的单元测试,取名 testCalculator.py :
#!/usr/bin/env python
# coding=utf-8
import unittest
from calculator import Calculator
class CalculatorTest(unittest.TestCase):
def test_add_0(self):
cal = Calculator(8, 4)
result = cal.add()
self.assertEqual(result, 12)
def test_add_1(self):
cal = Calculator(8, 4)
result = cal.add()
self.assertNotEqual(result, 12)
def