[PYTHON] Geben Sie die Testfunktion docstring mit pytest-html in den Bericht ein

Hier finden Sie eine Zusammenfassung der Ausgabe eines Dokumentstrings in einen pytest-html-Bericht als detaillierte Informationen zur Testfunktion.

1. Bearbeiten Sie conftest.py

Fügen Sie conftest.py (erstellt, falls nicht vorhanden) die folgenden Einstellungen direkt unter dem Testverzeichnis hinzu. Der Titel wird in die dritte Spalte des Tabellenkopfs eingefügt, und die Informationen der Testfunktion docstring werden in die dritte Spalte des Tabellenkörpers eingefügt.

conftest.py


import pytest
from py.xml import html


def pytest_html_results_table_header(cells):
    cells.insert(2, html.th('Description'))

def pytest_html_results_table_row(report, cells):
    cells.insert(2, html.td(report.description))

@pytest.hookimpl(hookwrapper=True)
def pytest_runtest_makereport(item, call):
    outcome = yield
    report = outcome.get_result()
    report.description = str(item.function.__doc__)

2. Schreiben Sie eine Dokumentzeichenfolge in Ihren Testcode

def test_one(self):
    """
Dies ist Test 1
    """
    assert True

def test_two(self):
    """
Dies ist Test 2
    """
    assert False

3. Testausführung

$ pytest --html=report.html

4. Ergebnis

Die Dokumentzeichenfolge für jede Testfunktion wird in der dritten Spalte der Tabelle angezeigt.

pytest-html.png

Referenz

Recommended Posts

Geben Sie die Testfunktion docstring mit pytest-html in den Bericht ein
Testen Sie die Standardausgabe mit Pytest
Ausgabe in eine CSV-Datei mit Python
Unit Test Log Ausgabe mit Python
Versuchen Sie, Audio mit M5 STACK auszugeben
Geben Sie Farbzeichen mit Python zu hübsch aus
Wie man einen Taschentest mit Python macht
ARC037 Baum testet höflich mit rekursiver Python-Funktion
Ich habe versucht, die Sündenfunktion mit Chainer zu trainieren
Prozedur zum Laden von MNIST mit Python und zur Ausgabe an png
Fügen Sie dem Verwaltungsbildschirm mit django-import-export die CSV-Exportfunktion hinzu
[Einführung in Python] Wie iteriere ich mit der Bereichsfunktion?
Ausgabeprotokoll an die Konsole mit Flask + Nginx auf Docker
[Golang] Testen Sie die Funktionsfehlerbeendigung "os.Exit (1)" mit dem Testen.
Erstellen Sie mit OpenCV eine Funktion zum Beschreiben japanischer Schriftarten
[Python-pptx] Gibt PowerPoint-Schriftinformationen mit Python in CSV aus
Erklärender Text, der mit Python> Funktion> Docstrings> help () / .__ doc__ angezeigt werden soll