Kurs Python richtig lernen/Unit Testing: Unterschied zwischen den Versionen

Aus Geometa Lab OST
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „=== Unit Testing mit Python ===“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
=== Unit Testing mit Python ===
== Übung "Unit Testing mit Python und Nose" ==
 
In dieser Übung lernen Sie Unit Testing mit dem Python Test Runner Nose.
 
Geschätzter Zeitaufwand für diese Übung: ca. '''2h'''.
 
=== Einstieg ===
 
Um Nose kennenzulernen starten wir mit einem Beispiel. Speichern Sie den folgenden Unit test in einem File "test_42.py":
 
<code>
def test_life_the_universe_and_everything():
    assert 42 == 42
</code>
 
Führen Sie diesen Test wiefolgt aus:
 
<code>
$ nosetests
</code>
 
Als Output bekommen Sie eine kleine Statistik inkl. dem Fehlerstatus (OK/NOK). Möchten Sie detailliertere Infors (welche Tests durchgeführt wurden), dann verwenden Sie die Option ''-v''.
 
Manchmal benötigen Sie für Ihre Unit Tests Fixtures. Diese können Sie wiefolgt definieren:
 
<code>
def test_life_the_universe_and_everything():
    assert 42 == 42
 
test_life_the_universe_and_everything.setUp = lambda: print "setUp"
test_life_the_universe_and_everything.tearDown = lambda: print "tearDown"
</code>
 
Führen Sie dieses Beispiel aus und verifizieren Sie, dass die Ausgaben Ihren Erwartungen entsprechen.

Version vom 12. September 2012, 10:47 Uhr

Übung "Unit Testing mit Python und Nose"

In dieser Übung lernen Sie Unit Testing mit dem Python Test Runner Nose.

Geschätzter Zeitaufwand für diese Übung: ca. 2h.

Einstieg

Um Nose kennenzulernen starten wir mit einem Beispiel. Speichern Sie den folgenden Unit test in einem File "test_42.py":

def test_life_the_universe_and_everything():

   assert 42 == 42

Führen Sie diesen Test wiefolgt aus:

$ nosetests

Als Output bekommen Sie eine kleine Statistik inkl. dem Fehlerstatus (OK/NOK). Möchten Sie detailliertere Infors (welche Tests durchgeführt wurden), dann verwenden Sie die Option -v.

Manchmal benötigen Sie für Ihre Unit Tests Fixtures. Diese können Sie wiefolgt definieren:

def test_life_the_universe_and_everything():

   assert 42 == 42

test_life_the_universe_and_everything.setUp = lambda: print "setUp" test_life_the_universe_and_everything.tearDown = lambda: print "tearDown"

Führen Sie dieses Beispiel aus und verifizieren Sie, dass die Ausgaben Ihren Erwartungen entsprechen.