一、Pytest的前置和后置方法
1.Pytest可以集成unittest实现前置和后置
importunittestimportpytestclassTestCase(unittest.TestCase):defsetUp(self)->None:print('unittest每个用例前置')deftearDown(self)->None:print('unittest每个用例后置')@classmethoddefsetUpClass(cls)->None:print('unittest所有用例的前置,所有用例之前只执行一次!')@classmethoddeftearDownClass(cls)->None:print('unittest所有用例的后置,所有用例执行之后只执行一次')deftest_03(self):print('测试用例三')deftest04(self):print('测试用例四')if__name__ =='__main__':pytest.main(['-s','pytest-demo.py'])
注意:setUpClass和tearDownClass需要用@classmethod装饰器装饰。
2.Pytest前置和后置
importpytestclassTestCase:defsetup_class(self):print('Pytest所有用例的前置,所有用例之前只执行一次!')defteardown_class(self):print('Pytest所有用例的后置,所有用例执行之后只执行一次')defsetup(self):print('Pytest每个用例前置')defteardown(self):print('Pytest每个用例后置')deftest_03(self):print('测试用例三')deftest04(self):print('测试用例四')if__name__ =='__main__':pytest.main(['-s','pytest-demo.py'])
注意:setup、teardown、setup_class、teardown_class都是小写!
二、跳过用例
使用方法:
@pytest.mark.skipif(2>1,reason='当条件不True时跳过')
使用命令:pytest -vv 执行结果显示更清楚。
这可能是B站最详细的pytest自动化测试框架教程,整整100小时,全程实战!!!