2016-07-26 6 views
0

Я использую питон asyncio с pytest-aysncio, что означает, что все мои тесты выглядеть следующим образом:Py.Test добавить маркер для всех тестов

@pytest.mark.asyncio 
async def test_my_func(): 
    result = await my_func() 
    assert result == expected 

который прекрасно работает, но я предпочел бы не украсить каждый одна функция, чтобы заставить их работать. Есть ли способ в pytest добавить этот маркер к каждой тестовой функции?

+0

Использование pytest-aiohttp, man! –

+0

@AndrewSvetlov, который, похоже, не работает, 'RuntimeError: в потоке нет потока событий MainThread'' –

ответ

2

Вы можете добавить крючок, как это к вашему conftest.py:

def pytest_collection_modifyitems(items): 
    for item in items: 
     item.add_marker('asyncio') 

Или сделать так filewise, вы можете установить pytestmark = pytest.mark.asyncio глобально в этом файле.