Pytest - Маркировка некоторых параметров с --slow приводит к равному времени выполнения - PullRequest
0 голосов
/ 21 июня 2019

Я тестирую функцию загрузки файлов .txt и .txt.gz.Поэтому я сохраняю имена файлов в списке и использую этот код:

import pytest

# usually my files looked like this: 'path/to/my/file/file.txt'
filenames = ['file.txt','file.txt.gz']
filenames.append(pytest.param('file.txt.gz', marks=pytest.mark.slow))

@pytest.fixture(params=filenames)
def filename(request):
    return request.param

def test_loading_etc(filename):
    # My code:
    # customloadfunction(filename)  
    # assert boolean_whatever
    # doing anything: (just for some runtime tests)
    x = 0
    runtime = 10000000 # adding some runtime
    for i in range(runtime):
        x += 1
    assert x == runtime

Итак, дело в том, что загрузка файлов .txt.gz занимает больше времени, и я хочу исключить их в некоторых тестах.Таким образом, они помечены как медленные и могут использоваться с командой командной строки pytest --runslow.

Моя проблема: команда pytest не запускает медленные тесты, занимает то же время, что и когда я выполняю медленныетесты с pytest --runslow.Когда я объявляю 2 функции для тестирования файлов .txt.gz отдельно и использую маркер @pytest.mark.slow, это займет гораздо меньше времени.

Есть ли способ получить его в одной функции, все еще получая лучше время?

решено : после того, как я попробовал свой данный тест, который работал нормально, даже моя собственная программа работала нормально - так что проблема решилась сама как-то.Спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...