使用unittest2框架,做简单的技术实验,了解框架基本使用及执行原理 代码: #一个自动化测试框架,关于用例执行的实验 #导入包 import unittest2 #创建类,并继承代码库中的TestCase,表示当前类,是测试用例类 class UnittestDemo(unittest2.TestCase): #重写setUpClass()方法 @classmethod def setUpClass(cls): print('setUpClass方法') print('') def setUp(self): print('在测试用例开始前,要做的初始化条件') def test_login(self): print('以test开头的测试用例执行实验') self.func_aa() def func_aa(self): print('不以test开头的方法,是普通方法,只有被调用才会执行,放在test_login()里调用了!') def test_regi(self): print('每条测试用例执行前,需要执行一次setUp()、tearDown()方法') def tearDown(self): print('在测试用例结束后,要做的场景还原') print('')
#重写tearDownClass方法 @classmethod def tearDownClass(cls): print('tearDownClass方法') if __name__ == '__main__': unittest2.main() 光标在main()方法处,运行结果: setUpClass方法 在测试用例开始前,要做的初始化条件 以test开头的测试用例执行实验 不以test开头的方法,是普通方法,只有被调用才会执行,放在test_login()里调用了! 在测试用例结束后,要做的场景还原 在测试用例开始前,要做的初始化条件 每条测试用例执行前,需要执行一次setUp()、tearDown()方法 在测试用例结束后,要做的场景还原 tearDownClass方法 Ran 2 tests in 0.002s OK
最后收尾的小结: 按住ctrl键,点击unittest2.TestCase类,可以看到这个类中,继承了unittest.TestCase 我们用的unittest2,是unittest的升级版本,unittest.TestCase打开这个类,可以找到**setUp()、tearDown()**是写的pass空方法,所以需要重写这两个方法 按住ctrl键,点击unittest2.TestCase类,进入这个类中,还有两个方法setUpClass()、tearDownClass()、方法。这两个方法也需要重写,方法前要加注释器【@classmethod】 重写父类中的setUpClass()方法,是类中,所有测试用例执行前,要做的初始化条件 重写父类中的setUp()方法。在每条测试用例开始前,要做的预置条件 声明一个以test开头的方法,表示这是一个测试用例方法,该方法可以直接运行。 test开头的测试用例执行顺序,按照test后的字母排列顺序执行 声明一个不以test开头的方法,是普通方法,只有被调用才会执行 重写父类中的tearDown()方法。在测试用例结束后,要做的场景还原 重写父类中的tearDownClass()方法,是类中,所有测试用例执行后,要做的场景还原工作(比如注册后,再次注册不成功) 每条测试用例执行前,需要执行一次setUp()、tearDown()方法 unittest2.main()解释:只有在当前文件运行,就会执行unittest2.main()。表示调用unittest2的主方法,执行当前类中的所有方法 运行时,如果光标指在某一个test开头的测试类上,就只运行当前的测试类;如果光标在unittest2.main()处,就会执行所有的测试用例方法 来源:https://www./content-4-504351.html
|