Gibt es trotzdem mit Unittest nur behaupten, dass ein Funktionsaufruf nicht zu einem Fehler führt, ob es sich um eine Typeerror ist, IOError usw.Wie man behauptet, dass ein Funktionsaufruf keinen Fehler mit unittest zurückgibt?
Beispiel:
assert function(a,b) is not error
oder
if not assertRaises function(a, b)
Was ist der beste Weg, dies zu tun (ohne Klassen zu verwenden)? Das Problem, das ich habe, ist all die nützliche Dokumentation, die ich bekomme. Ein Kreuz im Unitest ist alles klassenbasiert und ich möchte nicht klassenbasiert verwenden.
Voll Beispiel:
def test_validate_params():
assert test.validate_params('hackenv-re', 'test.username') is not errors
assert test.validate_params('fakeenv', 'test.username') is error
assert test.validate_params('hackevn-re', 'vagrant') is error
counter += 1
print "Test Passed {0}/5: validate_params".format(counter)
Haben Sie eine Probe des Codes haben Sie testen möchten. Abhängig davon, wie Ihre Methode aussieht, gibt es verschiedene Möglichkeiten, dies zu tun. – idjaw
Ich habe alles an Ort und Stelle, ich versuche nur die Zeilen anzupassen, die ich in dem Beispiel eingefügt habe. Es ist nur ein Funktionsaufruftest (a, b) – david
Es ist schwer, den besten Ansatz zu bestimmen, ohne zumindest einen Blick darauf zu werfen, wie Sie testen. Zum Beispiel hier. Wenn ich testen will, dass es nicht erhöht wurde, werde ich sicherstellen, dass der Code "Zeug" zurückgibt. So weiß ich, dass es nicht behauptet hat. – idjaw