Einkaufswagen
Loading
Nur noch -1 verfügbar

Testen und TDD in Python- Unit-Tests, Mocking und Best Practices

Aktionspreis
€12.99 (25 % Rabatt)
€9.74
Zum Einkaufswagen hinzugefügt

Testen und TDD in Python: Unit-Tests, Mocking und Best Practices


Ein praxisorientierter Leitfaden zur automatisierten Qualitätssicherung mit unittest, pytest und testgetriebener Entwicklung


Inhaltsverzeichnis


Kapitel 1: Warum testen? Grundlagen automatisierter Tests


  • Unterschied zwischen manuellen und automatisierten Tests
  • Vorteile von Unit-Tests in der Softwareentwicklung
  • Das Testpyramiden-Modell
  • Einführung in Test-Driven Development (TDD)

Kapitel 2: Erste Schritte mit unittest


  • Aufbau von Testklassen
  • Wichtige Assertions (assertEqual, assertTrue, assertRaises etc.)
  • Tests ausführen mit CLI und IDE
  • Mini-Projekt: Einfache Funktion mit Tests absichern

Kapitel 3: Teststruktur und Testabdeckung verbessern


  • setUp() und tearDown() für gemeinsame Vorbereitung
  • Testmodule und Namenskonventionen
  • Testabdeckung messen mit coverage.py
  • Mini-Projekt: Code refaktorisieren und Abdeckung prüfen

Kapitel 4: Einführung in pytest


  • pytest vs. unittest
  • Fixtures, parametrisiertes Testen
  • Plugins und Features
  • Mini-Projekt: Datentransformation mit pytest absichern

Kapitel 5: Testgetriebene Entwicklung in der Praxis


  • Red → Green → Refactor: der TDD-Zyklus
  • Anforderungen in Tests übersetzen
  • Praktisches Beispiel: Entwicklung eines Taschenrechners per TDD
  • Tipps für langfristig sauberen Code

Kapitel 6: Mocking und Isolation von Abhängigkeiten


  • Warum Mocks?
  • unittest.mock verwenden: patch(), MagicMock, Mock()
  • Methodenaufrufe und Rückgabewerte simulieren
  • Mini-Projekt: Externe API mit Mock ersetzen

Kapitel 7: Fehlerbehandlung und Testszenarien


  • Tests für Ausnahmen, ungültige Eingaben, Sonderfälle
  • Randfälle gezielt testen
  • Mini-Projekt: Benutzerregistrierung mit robuster Prüfung

Kapitel 8: Integrationstests und systemübergreifendes Testen


  • Datenbanktests, Dateioperationen, Netzwerkverbindungen
  • Testumgebung aufsetzen
  • Mini-Projekt: REST-API-Tests mit requests und Testdatenbank

Kapitel 9: Testautomatisierung und CI/CD


  • Tests automatisiert in Pipelines ausführen (GitHub Actions, GitLab CI, etc.)
  • Fehler schneller erkennen
  • Codequalität dauerhaft sichern
  • Beispiel: .yml-Konfiguration für CI mit pytest

Kapitel 10: Best Practices für nachhaltiges Testen


  • Lesbare, wartbare Tests schreiben
  • Keine Logik im Test
  • Tests als Dokumentation und Sicherheitsnetz
  • Empfehlungen für kleine und große Projekte

Anhang A: Übersicht der wichtigsten unittest- und pytest-Funktionen


  • Kompaktreferenz mit Syntax und Beispielen

Anhang B: Typische Testfehler und wie man sie vermeidet


  • Flaky Tests, versteckte Abhängigkeiten, unklare Fehlermeldungen
  • Anti-Patterns im Testcode

Anhang C: Übungsaufgaben mit Lösungen


  • Unit-Test für mathematische Funktionen
  • Mocking von Datei- und Netzwerkkontakt
  • TDD für kleine Funktionen und Klassen
  • Ausführlich kommentierte Lösungen


Sie erhalten die folgenden Dateien:
  • EPUB (115KB)
  • PDF (1MB)