diff --git a/04b_umstieg_vscode/index.html b/04b_umstieg_vscode/index.html index 09aaa11..367d991 100644 --- a/04b_umstieg_vscode/index.html +++ b/04b_umstieg_vscode/index.html @@ -296,7 +296,7 @@ sudo snap install --classic code
Lerne Schritt für Schritt, wie du eigene Klassen baust, Methoden nutzt und komplexe Programme strukturierst.
+Lerne Schritt für Schritt, wie du eigene Klassen baust, Methoden nutzt und professionell mit automatischen Tests arbeitest.
aufgabe.py im entsprechenden Kapitelordner und löse die Aufgaben.python3 test_aufgabe.py
- + In der professionellen Softwareentwicklung schreibt man zu jedem Code automatische Unit Tests. + Das Geniale daran: Du musst nie raten, ob deine Lösung stimmt! Das Testskript überprüft deine Funktionen in Sekundenbruchteilen mit vielen verschiedenen Testfällen. +
+ +Öffne das Terminal in VS Code mit Strg + ` (Mac: Cmd + `). Wechsle in den jeweiligen Kapitelordner und starte das Testskript:
+ +cd 01_einstieg_klassen
+python3 test_aufgabe.py
+ Ran 4 tests in 0.002s
+OK
+ Perfekt! Alle Anforderungen sind erfüllt. Du bist bereit für das nächste Kapitel!
+AssertionError: 25 != 40
+berechne_endstand falsch
+ Dein Code stürzt nicht ab, aber liefert einen falschen Wert (z.B. falsche Rechenformel).
+AttributeError: 'Fahrrad'
+object has no attribute 'gang'
+ Ein Attribut oder Methodenname fehlt oder ist falsch geschrieben (z.B. Tippfehler).
+Du möchtest wissen, wie viele Kapitel du schon gelöst hast? Führe im Hauptordner Aufgaben-Python einfach folgenden Befehl aus:
python3 test_all.py
+ python3 test_all.py
- return statt nur print(): Tests prüfen das, was eine Funktion mit return zurückliefert. Ein print() zeigt es zwar auf dem Bildschirm an, reicht dem Test aber nicht!def mutter_setzen(self): verlangt, darf die Methode nicht def MutterSetzen heißen (Python unterscheidet Groß- und Kleinschreibung).TypeError: ... takes 0 positional arguments but 1 was givenUrsache: Du hast bei einer Methode in deiner Klasse das self im Methodenkopf vergessen!
Lösung: Schreibe def meine_methode(self): statt def meine_methode():.
AttributeError: 'NoneType' object has no attribute '...'Ursache: Eine Funktion oder Methode hat nichts zurückgegeben (also None), und du versuchst, darauf zuzugreifen.
Lösung: Prüfe, ob du am Ende der Methode das return ... vergessen hast!
In einen Unterordner hinein: cd 01_einstieg_klassen
Einen Ordner nach oben zurück: cd ..
Inhalt des aktuellen Ordners auflisten: ls (oder dir auf Windows)