[PYTHON] pytest + webtest + pyramide

Hier erfahren Sie, wie Sie eine mit Pyramid entwickelte App mit WebTest funktionsfähig testen können [http://docs.pylonsproject.org/projects/pyramid/en/latest/quick_tutorial/functional_testing.html]. Wenn ich versuche, diesen Test mit pytest durchzuführen, funktioniert er nicht. Wie im Originaldokument angegeben. "pytest enthält möglicherweise nicht Ihre Tests."

Wenn ich die Pytest-Dokumentation lese, habe ich das Gefühl, dass die Verwendung von "unittest" nicht funktioniert. Beispielsweise funktioniert der parametrisierte Test nicht, wenn die Testklasse eine Unterklasse von unittest ist (http://stackoverflow.com/questions/18182251/does-pytest-parametrized-test-work-with-unittest- klassenbasierte Tests).

Deshalb sieht die Konfiguration zum Testen der Pyramiden-App mit pytest + webtest so aus.

conftest.py


import pytest

def pytest_report_header(config):
    return "sample: functional tests"

@pytest.fixture
def app():
    """ prepare test target app """
    from app import main
    main_app = main({})
    from webtest import TestApp
    return TestApp(main_app)

tests.py


import pytest

@pytest.mark.usefixtures("app")
def test_not_found(app):
    res = app.get('/', status=404)
Unten weggelassen

Schließlich habe ich das Gefühl, ich kann einen Test mit pytest schreiben. Ich denke, der parametrisierte Test ist am bequemsten.

Referenz

Recommended Posts

pytest + webtest + pyramide
pytest
Pyramide
pytest memo
pytest Zusammenfassung
Pyramide eingeführt