unittest测试入门

import unittest
from JSuan import JSuan

#定义测试类,父类为unittest.TestCase
class Test(unittest.TestCase):

    #定义setUp()方法用于测试用例执行前的初始化工作
    def setUp(self):
        print("*"*30)
        print("start test")
        #self.number = input("请输入数字:")

    #定义测试用例,以“test_”开头命名该方法
    def test_case1(self):
        print("加法计算:")
        result = JSuan(2,3).add();
        try:
            self.assertEqual(result,5)
        except:
            print("计算错了")
        else:
            print("计算正确")

    def test_case2(self):
        print("乘法计算2:")
        result = JSuan(2,3).ji();
        try:
            self.assertEqual(result,5)
        except:
            print("计算错了")
        else:
            print("计算正确")

    #定义tearDown()方法用于测试用例执行之后的善后工作
    def tearDown(self):
        print("Test over")
        print("*"*30)


if __name__ == '__main__':
    '''
    #执行测试方案一:
    #unittest.main()方法会搜索该模块下所有以test_开头的测试用例方法,并自动执行他们
    unittest.main()
    '''

    #执行测试方案二:
    #先构造测试集,然后再实例化测试套件
    suite = unittest.TestSuite();
    
    #将测试用例加载到测试套件中
    #执行顺序是安装加载顺序,先执行test_case2,再执行test_case1
    suite.addTest(Test("test_case2"))
    suite.addTest(Test("test_case1"))

    #执行测试方案三:

    url = "."
    all_cases = unittest.defaultTestLoader.discover(url, "Test_*.py")

    #把所有的测试用例加进来
    for case in all_cases:
        suite.addTests(case)

    #执行测试用例,实例化TextTestRunner类
    runner = unittest.TextTestRunner()

    #用run()方法运行测试套件
    runner.run(suite)


 

猜你喜欢

转载自blog.csdn.net/MA976647776/article/details/87919673