Настройка конфигураций pytest-benchmark в pytest.ini - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь настроить файл конфигурации pytest.ini таким образом, чтобы любой тест производительности проводился с опцией "--benchmark-autosave", как и другие тесты - нет.

Я попытался добавить опцию в INI-файл следующим образом ...

[pytest]
addopts = --benchmark-autosave

Однако он запускает эту опцию при каждом тестировании, приводящем к предупреждениям PytestBenchmarkWarning. Мне интересно, есть ли способ просто запустить эту опцию на pytests, которые использовали бенчмарк.

Я посмотрел в ...

[pytest]
addopts = --benchmark-autosave
filterwarnings = 
     ignore::PytestBenchmarkWarning

Однако я получаю эту ошибку:

INTERNALERROR> warnings. OptionError: unknown warning category: 'PytestBenchmarkWarning'

Если у меня есть тесты следующим образом test_a.py

import a
import pytest

def test_a(benchmark):
     benchmark(a.func)

test_b.py

import b
import pytest

def test_b():
     b.func()

pytest.ini

[pytest]
addopts = --benchmark-autosave
filterwarnings = 
     ignore::PytestBenchmarkWarning

с файловой структурой:

my_project/src/a.py
my_project/src/b.py
my_project/test/test_a.py
my_project/test/test_b.py
my_project/pytest.ini

Под терминалом:

cd my_project
pytest test/
...