pytest: 在配置文件pytest.ini中自定义选项/变量
1 pytest.ini中有很多pytest框架自带的选项,即便你没有定义一个pytest.ini文件,这些选项依然存在并影响pytest的很多行为
执行pytest -h
可以看到这些选项及默认值
上面这些默认选项及其默认值可以被被系统自动读取,不信我们在test中打印一个出来看看
选取 xfail_strict,上图中可以看到它的默认值是false
我的目录,目录里面没有pytest.ini文件
test文件
如上 打印出来的只也是false
2 在pyets中自定义选项并设置值,然后再test中读取
新建配置文件
在conftest.py中添加如下内容
def pytest_addoption(parser):
#配置文件的自定义选项必须通过这种方式注册
#pytest_addoption parser.addini 这些名称是固定的不能随便改动
parser.addini('env',default='prod',help='设置env')
#addini() 括号里面的参数值可自定义
添加一个test
执行结果
打印出来的值和配置文件设置的是一样的
这里我们还可以吧配置文件去掉,如图 把它改成bpytest.txt 或者直接删除也行
执行结果
打印出来的值是prod
因为之前我们已经在coftest.py中把env这个选项注册过了,并设定了默认值
如果配置文件有这个选项,就会用配置文件的值
相反,就用注册中设定的默认值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南