Я использую py.test с селеном и applitools Глаза --- те последние части не имеют значения, только часть py.test делает. Я вычисляя некоторые конфигурации сеанса уровня тестового прогона с использованием сеансового уровня светильников, например, так:как распечатать значение приспособления для сессии py.test
@pytest.fixture(scope='session')
def branch(request,timestamp):
branch = request.config.getoption('--branch')
if not branch and not request.config.getoption('--live'):
# auto-generate branch
branch = "auto " + timestamp
return branch
Я хотел бы напечатать вычисленное значение как часть заголовка тест --- или любым иным способом верните его в истинное начало.
Вначале я попытался использовать capsys.disable()
в функции ветвления, но у меня появилось сообщение об ошибке, что capsys - это прибор уровня функции, поэтому его нельзя использовать с помощью прибора уровня сеанса. Справедливо.
Затем я попытался скопировать пример для добавления информации заголовка протокола испытаний:
def pytest_report_header(config,branch):
print branch
Но это не кажется, что ветвь доступна как приспособление для pytest_report_header. Я мог бы напрямую вызвать функцию branch(), но этот вид побеждает цель.
Я видел this question, но я не могу сказать, применимо ли это - это немного над моей головой py.test-wise.
Кажется, что это должно быть простой задачей, но я застрял --- какие-нибудь идеи?