Pytest忽略灯具中的警告

时间:2019-03-22 17:57:22

标签: python pytest

我有一个正在使用的灯具:

@pytest.fixture(scope='module')
def dask_client():
    cluster = LocalCluster(n_workers=None, threads_per_worker=2)
    client = Client(cluster)
return client

def test_some_func(x, dask_client):
    # Do something
    return

但是由于上述函数调用的第一行,它正在引起警告。通常,我可以通过在测试中添加以下装饰器来忽略各个测试的警告:

@pytest.mark.filterwarnings("ignore:some regex to match")

但是,当我使用此装饰器装饰灯具时,这似乎对灯具没有影响。我也尝试过用这行装饰测试功能,但是没有任何运气。我该如何捕捉和忽略由于调用灯具而产生的警告?

2 个答案:

答案 0 :(得分:0)

至少有两个选择:

1)在运行以下内容的测试的根目录中写入pytest.ini文件:

[pytest]
filterwarnings =
    ignore::UserWarning

(假设您只想忽略UserWarning)

2)使用-W ignore::UserWarning选项运行pytest。

两种方法都将忽略灯具中警告的警告。

答案 1 :(得分:0)

在pytest标记cmd中使用--disable-warnings标志来禁止所有警告。 关于捕获这些警告,您可以参考官方文档:https://docs.pytest.org/en/latest/warnings.html