编写一个简单的计算器:module.py
class Calculstor():
def __init__(self,a,b):
self.a = int(a)
self.b = int(b)
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
在同一个文件夹下创建测试文件:tests.py
import unittest #导入单元测试框架
from module import Calculstor
class ModuleTest(unittest.TestCase): #创建ModuleTest类继承unittest.TestCase类
#测试用例执行前的初始化
def setUp(self):
self.cal = Calculstor(10,2)
#测试用例执行之后的善后工作
def tearDown(self):
pass
#测试用例(方法)必须以test开头
def test_add(self):
result = self.cal.add()
self.assertAlmostEqual(result,12) #断言
def test_sub(self):
result = self.cal.sub()
self.assertAlmostEqual(result, 8)
def test_mul(self):
result = self.cal.mul()
self.assertAlmostEqual(result,20)
def test_div(self):
result = self.cal.div()
self.assertAlmostEqual(result,5)
if __name__ == "__main__":
#unittest.main()
# 构造测试集
suite = unittest.TestSuite()
suite.addTest(ModuleTest("test_add"))
suite.addTest(ModuleTest("test_sub"))
suite.addTest(ModuleTest("test_mul"))
suite.addTest(ModuleTest("test_div"))
#执行测试
runner = unittest.TextTestRunner()
runner.run(suite)
执行结果如下:
”.“代表一条运行通过的用例,总共运行了4条测试用例,用时0.000秒