Как пометить тесты как «длинные» и пропустить их? - PullRequest
0 голосов
/ 03 мая 2018

Я обычно запускаю свои тесты с tox, который вызывает pytest. Эта настройка прекрасно работает во многих проектах. Однако в некоторых проектах у меня есть некоторые тесты, которые занимают много времени (несколько минут). Я не хочу запускать их каждый раз. Я бы хотел украсить тесты так долго.

Примерно так:

$ tox --skip-long

и

# core modules
import unittest

class Foo(unittest.TestCase):

    def test_bar(self):
        ...

    @long
    def test_long_bar(self):
        ...

Как я могу это сделать?

1 Ответ

0 голосов
/ 03 мая 2018

Я нашел половину ответа здесь :

@pytest.mark.long

и выполнить

pytest -v -m "not long"

Чтобы запустить его на токсе ( источник ):

tox -- -m "not long"

Выходные данные выглядят так:

============================ 2 tests deselected ===================================
========== 20 passed, 2 deselected, 7 warnings in 151.93 seconds ==================
...