使用unittest框架编写测试用例

编写一个简单的计算器: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秒

猜你喜欢

转载自blog.csdn.net/qq_30990097/article/details/81064381
今日推荐