Die py.test assert docs sagenpy.test: Format fehlgeschlagen behaupten und drucken Sie benutzerdefinierte Nachricht
... wenn Sie eine Nachricht mit der Behauptung wie folgt angeben:
assert a % 2 == 0, "value was odd, should be even"
dann keine Behauptung Introspektion findet überhaupt statt und die Nachricht wird im Traceback einfach angezeigt.
Pythons builtin unittest
Modul tut dies auch, es sei denn, Ihre TestCase
Sets longMessage = True
.
Die schöne Assert-Formatierung ist Test-Entwickler freundlich, während die benutzerdefinierte Nachricht mehr Business-Anforderung/Mensch freundlich ist. Die benutzerdefinierte Nachricht ist besonders hilfreich, wenn Sie sich nicht im Kontext des Tests befinden, d. H. Sie beantwortet, was diese Assert dort tut, ohne sich den Code ansehen zu müssen. Also, ich hätte gerne beide Nachrichten.
Gibt es eine Möglichkeit, py.tests schön zu bekommen Introspektion und Formatierung UND eine benutzerdefinierte Nachricht drucken?
"Sie können wahrscheinlich auch einige interessante Werte aus dem Ausdruck hinzufügen" - definitiv, aber auf Kosten der Wiederholung, und ich bekomme nicht die nette Formatierung. Jedenfalls werde ich [BitBucket des Projekts] (https://bitbucket.org/hpk42/pytest/) verfolgen. – Bluu
Ich habe auf der Bitbucket-Seite für py.test keine Diskussion darüber gesehen. Wurde das hinzugefügt jemals diskutiert? –
@ durden2.0 nein, es fiel von meinem Radar, als ich mich entschied, mich zu wiederholen (und etwas weniger ausdrucksvoll). – Bluu