python unittest+parameterized,单元测试框架+参数化

总要写新的自动化测试模块,在这里把demo记录下来,后面方便自己直接复制粘贴

from nose_parameterized import parameterized
import unittest
class DemoTest(unittest.TestCase):
    list_test = [(1,2),(2,2)]
    def setUp(self):
        """
        每条用例执行之前都会执行的操作放在此处
        定义一些变量
        打开文件
        连接数据库
        前置数据等操作
        """
        pass
        return

    def tearDown(self):
        """
        每条用例执行完之后都会执行的操作放在此处
        数据清理
        关闭文件或者数据库连接等
        """
        pass
        return
    @classmethod
    def setUpClass(cls):
        """
        这个只有在开始和结束的时候执行一次,即执行第一个用例之前
        """
        print('-----')
        return

    @classmethod
    def tearDownClass(cls):
        """
        这个只有在开始和结束的时候执行一次,即执行最后一个用例之后
        """
        print('=====')
        return

    @parameterized.expand(input=list_test)
    def test_1(self, a, b):
        """
        from nose_parameterized import parameterized,引用parameterized之后,用装饰器,可以实现参数化
        list_test是一个列表,列表的元素是元组,元组内包含所需各个参数(a, b)
        """
        s = a + b
        self.assertEqual(s,4)
        return

    def test_2(self):
        self.assertEqual(1,2)
        return


if __name__ == "__main__":
    suite = unittest.TestSuite()  # 定义一个测试套件
    suite.addTests(unittest.makeSuite(DemoTest)) # 这个类里面所有的测试用例 
runner = unittest.TextTestRunner()
runner.run(suite)
print('执行到当下了')

 

posted @ 2019-08-19 14:41  luckylemon  阅读(1714)  评论(0编辑  收藏  举报