Ich benutze Pytest mit Mock in meinem Python-Projekt.Wie kann ich Bibliothekscode entfernen Anrufe von pytest Traceback?
Wenn ich einen Testfehler erhalte, der ein Mock-Objekt (fast alle) beinhaltet, taucht der Traceback in den Mock-Bibliotheks-Quellcode ein und mein Code, der den Fehler auslöst, scrollt oft aus dem Blickfeld.
Gibt es eine Möglichkeit zu sagen, py.test, um installierte Bibliotheken aus dem Traceback oder etwas ähnliches auszuschließen? Der Geräuschpegel entfernt sich von dem, was sonst eine süße Testbibliothek ist.
Hmm, das ist interessant. Ich frage mich, wie ich diese Arbeit in meiner Situation machen würde, um alle falschen Bibliotheksanrufe zu verbergen? – scanny
hinzufügen '__tracebackhide__ = true' in den am häufigsten verwendeten Funktionen Ihrer Mock-Bibliothek. Wenn Sie etwas allgemeineres bevorzugen, können Sie py.test immer direkt hacken. –
Ah, aber Mock ist eine Standard-Python-Bibliothek, installiert über 'pip install mock', nicht Code, den ich selbst entwickelt habe. Nach was ich suchen würde, ist eine Möglichkeit, jeden "Bibliotheks" -Code auszuschließen, den ich nicht besitze, vielleicht indem pytest erkennt, dass er in 'site-package /' oder was auch immer installiert wurde und es ausschließt, dh es wie eine "Black Box", wie ich es tue. – scanny