1.conftest.py与放在项目根目录下,可以通过session级别的实现会话级别唯一 2.初始化操作举例 在conftest.py文件中,定义一个类,类变量在在初始化方法中实例化,在里面py文件中就都可以使用该类.变量来调用该对象,保证只初始化一次 ## conftest.py

 class Test1:  
		dr = None  # type:
		classss = None  # type:Ss

class Ss:
		def __init__(self):
				self.__cs = Test1.dr

		def pr1(self):
				print("方法1" + self.__cs)
		def pr2(self):
				print("方法2" + self.__cs)
		def close(self):
				print("退出")
				print("结束")

@pytest.fixture(scope='session', autouse=True)
def chishihua(request):
		Test1.dr = "ces"
		Test1.classss = Ss()
		print("所有")

		def fin():
				Test1.classss.close()  # 关闭操作
		request.addfinalizer(fin)
  1. autouse参数的差别 不使用autouse=True,需要在其他测试方法中调用该初始化方法,使用autouse=True则不需要调用

  2. addfinalizer方法可以进行session后的收尾工作

  3. 通过方法函数的方法名称来调用被@pytest.fixture修饰的方法名的返回值 # 实现模式,当使用时只需要在test(函数数传入相应的方法名) 如 def test_1(read_from_ini) 在该函数中即可调用read_from_ini对象 @pytest.fixture(scope='session', autouse=True) def read_from_ini(): from utils.ReadIni import Readini return Readini()