我如何在pytest-html中更新环境表

时间:2019-04-01 06:14:29

标签: python pytest pytest-html

我正在尝试编辑默认的pytest-html报告,并希望更新环境表。

我需要在环境表中添加用于浏览器,应用程序URL和其他变量的行,并删除一些默认行。

我曾经在环境表中添加额外的变量

@pytest.fixture(autouse=True, scope='session')
def _environment(request):
    request.config._metadata['URL']=os.environ['url']

但是,当我添加多个元数据变量时,它会引发错误

@pytest.fixture(autouse=True, scope='session')
def _environment(request):
    request.config._metadata['URL']=os.environ['url']
    request.config._metadata['Browser']=os.environ['browser']

谁能帮助我实现目标

2 个答案:

答案 0 :(得分:0)

基于docs,可以通过pytest_configure挂钩访问“环境”部分。 以下适用于pytest 4.4.0的我

def pytest_configure(config):
    config._metadata['URL'] = os.environ['url']
    config._metadata['Browser'] = os.environ['browser']

答案 1 :(得分:0)

从pytest v6.x.x开始,此功能不再起作用,内置的固定装置称为pytestconfig:

def test01_just_a_test(pytestconfig):
    pytestconfig._metadata['URL'] = os.environ['url']
    pytestconfig._metadata['Browser'] = os.environ['browser']

但是文档没有更新。