pytest: 在配置文件pytest.ini中自定义选项/变量

1 pytest.ini中有很多pytest框架自带的选项,即便你没有定义一个pytest.ini文件,这些选项依然存在并影响pytest的很多行为
执行pytest -h
可以看到这些选项及默认值
image
上面这些默认选项及其默认值可以被被系统自动读取,不信我们在test中打印一个出来看看
选取 xfail_strict,上图中可以看到它的默认值是false

我的目录,目录里面没有pytest.ini文件
image
test文件
image

image

如上 打印出来的只也是false

2 在pyets中自定义选项并设置值,然后再test中读取
新建配置文件
image

在conftest.py中添加如下内容

def pytest_addoption(parser):
    #配置文件的自定义选项必须通过这种方式注册
    #pytest_addoption parser.addini 这些名称是固定的不能随便改动
    parser.addini('env',default='prod',help='设置env')
    #addini() 括号里面的参数值可自定义

添加一个test
image

执行结果
image

打印出来的值和配置文件设置的是一样的

这里我们还可以吧配置文件去掉,如图 把它改成bpytest.txt 或者直接删除也行
image

执行结果
image

打印出来的值是prod
因为之前我们已经在coftest.py中把env这个选项注册过了,并设定了默认值
如果配置文件有这个选项,就会用配置文件的值
相反,就用注册中设定的默认值

posted @   工作手记  阅读(341)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示