seo站内优化技巧,上海100强企业排名,宣传网站制作,一键查询个人房产unittest.TestCase 包含了 setUp() 和 tearDown() 两个方法#xff0c;其中 setUp() 方法用于初始化测试固件#xff1b;而 tearDown() 方法用于销毁测试固件。程序会在运行每个测试用例#xff08;以 test_ 开头的方法#xff09;之前自动执行 setUp() 方法来初始化测试固…unittest.TestCase 包含了 setUp() 和 tearDown() 两个方法其中 setUp() 方法用于初始化测试固件而 tearDown() 方法用于销毁测试固件。程序会在运行每个测试用例以 test_ 开头的方法之前自动执行 setUp() 方法来初始化测试固件井在每个测试用例以 test_ 开头的方法运行完成之后自动执行 tearDown() 方法来销毁测试固件。
setUp()和tearDown()函数 setUp()函数是在众多函数或说是在一个类里最先被调用的函数每执行完一个函数都要从setUp()调用开始后再执行下一个函数有几个函数几次与位置无关随便放在那里都是他先被调用。 tearDown(函数是在众多函数执行完后他才被执行不管这个类里面有多少函数他总是最后一个被执行与位置无关放在那里都行最后不管测试函数是否执行成功都执行tearDown()方法如果setUp()方法失败则认为这个测试项目失败不会执行测试函数也不执行tearDown()方法。
1、setUp()和tearDown()方法都是非必要条件如果没有也可以写pass
2、setUp()和tearDown()方法每个测试用例都会执行先执行前置setUp然后执行的用例(test*)最后执行的后置tearDown
3、setUp():setUp()方法用于测试用例执行前初始化工作。如测试用例中需要访问数据库可以在setUp中建立数据库连接并进行初始化。如测试用例需要登录web可以先实例化浏览器
4、tearDown():tearDown()方法用于测试用例执行之后的善后工作。如关闭数据库连接、关闭浏览器 unittest 在运行每个测试用例以 test_ 开头的方法之前都执行了 setUp() 方法在每个测试用例以 test_ 开头的方法运行完成之后都执行了 tearDown() 方法setUp() 方法和tearDown() 方法执行多次 #!/usr/bin/env python
# _*_coding:utf-8_*_
import unittest
class Test(unittest.TestCase):def setUp(self):print(执行setUp初始化固件)def tearDown(self):print(调用tearDown销毁固件)def test_001_a(self):print(this is test_001_a用例)def test_002_b(self):print(this is test_002_b用例)def test_003_a(self):print(this is test_003_a用例)def login(self):print(this is login用例)
if __name__ __main__:unittest.main()C:\Program Files\Python35\python.exe C:/Users/wangli/PycharmProjects/Test/Test/test02.py
...
执行setUp初始化固件
this is test_001_a用例
----------------------------------------------------------------------
调用tearDown销毁固件
Ran 3 tests in 0.000s
执行setUp初始化固件this is test_002_b用例
OK
调用tearDown销毁固件
执行setUp初始化固件
this is test_003_a用例
调用tearDown销毁固件Process finished with exit code 0
setUpClass() 方法和tearDownClass()前加了classmethod unittest 在运行以 test_ 开头的方法测试用例之前执行setUpClass() 方法1次最后运行完成以 test_ 开头的方法之后执行 tearDownClass() 方法1次setUpClass() 方法和tearDownClass() 方法分别执行1次 #!/usr/bin/env python
# _*_coding:utf-8_*_
import unittest
class Test(unittest.TestCase):classmethoddef setUpClass(cls):print(执行setUpClass初始化固件)classmethoddef tearDownClass(cls):print(调用tearDownClass销毁固件)def test_001_a(self):print(this is test_001_a用例)def test_002_b(self):print(this is test_002_b用例)def test_003_a(self):print(this is test_003_a用例)def login(self):print(this is login用例)
if __name__ __main__:unittest.main()C:\Program Files\Python35\python.exe C:/Users/wangli/PycharmProjects/Test/Test/test02.py
...
----------------------------------------------------------------------
Ran 3 tests in 0.000sOK
执行setUpClass初始化固件
this is test_001_a用例
this is test_002_b用例
this is test_003_a用例
调用tearDownClass销毁固件Process finished with exit code 0