Как изменить путь, отображаемый в отчете pytest-html для каждого теста - PullRequest
0 голосов
/ 25 марта 2019

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

В моем файле conftest.py

@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
  pytest_html = item.config.pluginmanager.getplugin('html')
  outcome = yield
  report = outcome.get_result()
  report.description = str(item.function.__doc__)
  extra = getattr(report, 'extra', [])
  if report.when == 'call':
      # always add url to report
      extra.append(pytest_html.extras.url('http://www.example.com/'))
      xfail = hasattr(report, 'wasxfail')
      if (report.skipped and xfail) or (report.failed and not xfail):
          # only add additional html on failure
          extra.append(pytest_html.extras.html('<div>Additional HTML</div>'))
      report.extra = extra



@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
  pytest_html = item.config.pluginmanager.getplugin('html')
  outcome = yield
  report = outcome.get_result()
  report.description = str(item.function.__doc__)
  extra = getattr(report, 'extra', [])
  if report.when == 'call':
      # always add url to report
      extra.append(pytest_html.extras.url('http://www.example.com/'))
      xfail = hasattr(report, 'wasxfail')
      if (report.skipped and xfail) or (report.failed and not xfail):
          # only add additional html on failure
          extra.append(pytest_html.extras.html('<div>Additional HTML</div>'))
      report.extra = extra

Фактический результат: полный путь отображается для каждого теста

Ожидается: требуется только имя класса и имя тестового набора.

введите описание изображения здесь

...