关于pytest框架执行顺序是:
import pytest class Test_base(): def setup_class(self): print("------->setup_class") def teardown_class(self): print("------->teardown_class") def setup(self): print("------->setup_method") def teardown(self): print("------->teardown_method") def test_1(self): print('Test_1') def test_2(self): print('Test_2') def test_3(self): print('Test_3') assert 2 == 1 + 2 #跳过测试函数:条件、备注 @pytest.mark.skipif(condition=2 > 1, reason="跳过该函数") def test_4(self): print('Test_4') #标记失败函数:条件、备注 @pytest.mark.xfail(condition=2 > 1, reason="标记失败该函数") def test_5(self): print('Test_5') #函数参数化:argnames参数名、 argvalues参数对应值,类型必须为list #@pytest.mark.parametrize("a",[3,6]) #@pytest.mark.parametrize("a,b",[(1,2),(0,3)]) argvalues=[] @pytest.mark.parametrize("argnames", argvalues) def test_6(self,argnames): print('Test_6') #自定义标签 @pytest.mark.shuzf def test_shuzf(self): #pdb.set_trace() # 设置断点 print('shzuf') if __name__ == '__main__': pytest.main(['-s', 'test_demo1.py'])