Как создать HTML-отчет для pytest? - PullRequest
0 голосов
/ 08 июня 2018

Я создал проект в Eclipse, используя pytest Framework

class TestClass(object):
    def test_one(self):
        x = "this"
        assert 'h' in x

    def test_two(self):
        x = "hello"
        assert hasattr(x, 'check')

Теперь я хочу создать HTML-отчет для своего проекта. Я сделал следующее:

  • Установил плагин html
  • . Запишите приведенный ниже код в модуле conftest.py
import pytest

@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
    pytest_html = item.config.pluginmanager.getplugin('html')
    outcome = yield
    report = outcome.get_result()

Когда я запустил свой тест, я не получил никакого отчетаНиже приведен мой ожидаемый результат, но отчет не сгенерирован

> ============================= test session starts ============================= platform win32 -- Python 3.6.5, pytest-3.6.0, py-1.5.3, pluggy-0.6.0 rootdir: D:\Eclipse1\TFCProject,
> inifile: plugins: ordering-0.5, metadata-1.7.0, html-1.19.0 collected
> 2 items
> 
> TFCPackage\pycheck.py .F                                              
> [100%]
> 
> ================================== FAILURES ===================================
> _____________________________ TestClass.test_two self = <TFCPackage.pycheck.TestClass object at 0x03778AF0>

    def test_two(self):
        x = "hello"
>       assert hasattr(x, 'check')
E       AssertionError: assert False
E        +  where False = hasattr('hello', 'check')

TFCPackage\pycheck.py:13: AssertionError
===================== 1 failed, 1 passed in 0.41 seconds ======================

Пожалуйста, укажите мне, как я новичок в pytest

1 Ответ

0 голосов
/ 09 июня 2018

Если вы хотите сделать это в Eclipse IDE, вам нужно изменить конфигурацию Eclipse.

  1. Открыть окно конфигурации

    -> Параметры -> PyDev -> PyUnit

  2. Добавьте этот параметр в раздел «Параметры для тестового бегуна»

    - html = reportname.html

Замените вышеуказанное имя отчета на имя, выбранное вами для отчета.

Обратите внимание, что этот параметр является глобальным, и отчет будет создаваться при каждом запуске pytest в eclipse.

...